浮动:右边不适用于元素

Float: right doesn´t work with an element

我正在尝试制作响应式导航栏,但我不想在导航栏右侧添加一个元素,如下所示:Example

我放了 float:right,但它不起作用,之后,我尝试使用 margin-left,但如果我使用 margin left,它就不会响应。 float 左边的元素是 li 元素。这是我的全部 HTML:

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="css/style.css">
<title>Responsive Menu</title>
</head>
<body>
<div class="container">

    <a class="toggleMenu" href="#">Menu</a>
    <ul class="nav">
        <li class="test">
            <a href="#">I amsterdam</a>
        </li>
        <li  class="test">
            <a href="#">La Ciudad</a>
            <ul>
                <li>
                    <a href="#">Museos</a>
                    <ul>
                        <li><a href="#">Museo van Gogh</a></li>
                        <li><a href="#">Rijksmuseum</a></li>
                        <li><a href="#">Casa de Ana Frank</a></li>
                        <li><a href="#">Museo Casa de Rembrandt</a></li>
                    </ul>
                </li>
                <li>
                    <a href="#">Lugares</a>
                    <ul>
                        <li><a href="#">Vondelpark</a></li>
                        <li><a href="#">Barrio de Jordan</a></li>
                        <li><a href="#">Red Light Distrit</a></li>
                    </ul>
                </li>
            </ul>
        </li>
        <li  class="test">
            <a href="#">Alojamiento</a>
            <ul>
                <li>
                    <a href="#">Hoteles</a>
                    <ul>
                        <li><a href="#">Los mejores Hoteles</a></li>
                        <li><a href="#">Hoteles más económicos</a></li>
                    </ul>
                </li>
                <li>
                    <a href="#">Albergues</a>
                </li>
            </ul>
        </li>
        <li  class="test">
            <a href="#">Eventos</a>
            <ul>
                <li>
                    <a href="#">Concierto Kanye West</a>
                </li>
                <li>
                    <a href="#">Ajax - Real Madrid</a>
                </li>
                <li>
                    <a href="#">Amsterdam Fashion Week</a>
                </li>
            </ul>
        </li>
        <li  class="languages">
            <a href="#">Languages</a>
            <ul>
                <li>
                    <a href="#">English</a>
                </li>
                <li>
                    <a href="#">Español</a>
                </li>
                <li>
                    <a href="#">Français</a>
                </li>
                <li>
                    <a href="#">Deutsch</a>
                </li>
            </ul>
        </li>
    </ul>
</div>

还有我的 CSS,我认为这可能是其他样式的问题,但 class .languages 是最后一个,他们,我尝试使用 ID,但我得到了这个:

CSS是这样的:

body, nav, ul, li, a  {
margin: 0; 
padding: 0;
}

body {
width: 100%; 
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
background-color: red; 
}

 a {
 text-decoration: none;
 }

.container {
 width: 100%;
 }
.toggleMenu {
 display:  none;
 background: #666;
 padding: 10px 15px;
 color: #fff;
}
.nav {
 list-style: none;
 *zoom: 1;
 background:#175e4c;
 position: relative;
 }

.nav:before,
.nav:after {
content: " "; 
display: table; 
}
.nav:after {
clear: both;
 }

.nav ul {
list-style: none;
width: 9em;
}

 .nav a {
 padding: 10px 15px;
 color:#fff;
 *zoom: 1;
 }

.nav > li {
 float: left;
 border-top: 1px solid #104336;
 z-index: 200;
 }

.nav > li > a {
 display: block;
 }

.nav li ul {
 position: absolute;
 left: -9999px;
 z-index: 100;
 }

.nav li li a {
 display: block;
 background: #1d7a62;
 position: relative;
 z-index:100;
 border-top: 1px solid #175e4c;
 }

.nav li li li a {
 background:#249578;
 z-index:200;
 border-top: 1px solid #1d7a62;
 }

 #languages{
  float: right; 
 }

我不确定为什么它对您不起作用。使用您的示例代码,但只需将 id="languages" 添加到 li 元素似乎就可以了。参见 https://jsfiddle.net/eaLow5h3/

在您的 css3 中,您将 id 作为选择器 (#languages) 而不是 class!尝试将“#”更改为“.” .如果这不起作用,请添加到您的 css 此路径

 .nav > li.languages{
  float: right; 
 }