请原谅我的问题,如果这不是我惯常的方式,这是我第一次来此论坛。
话虽如此,我对css float有疑问。一切都很好,这就是问题所在。我正在制作一个下拉菜单,并制作了#ul li {float:left; }。现在,当我添加一个也是“ ul li”的子菜单时,浮动按钮对子菜单列表没有影响。我一直在寻找答案,但问题如此具体,很难找到它。我认为这与我给清单项目的宽度和高度有关,但我不确定。任何帮助,将不胜感激。
所以我确实得到了我想要的结果,我只是期望自输入后,信息li下的li也会向左浮动(#nav ul li {float left;}。它适用于li的第一行,但不适用于进入子菜单,为什么?
代码:Html
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="style.css">
<link rel="stylesheet" type="text/css" href="./awesome/css/all.min.css">
<title>navfinal</title>
</head>
<body>
<div id="wrapper">
<div id="nav">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">Info</a>
<ul>
<li><a href="#">About us</a></li>
<li><a href="#">What is our goal</a>
<ul>
<li><a href="#">Past</a></li>
<li><a href="#">Present</a></li>
<li><a href="#">Future</a></li>
</ul>
</li>
<li><a href="#">Something</a></li>
</ul>
</li>
<li><a href="#">Work</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
</div>
</body>
</html>
CSS代码:
body {
background:#847E7E;
}
#wrapper {
width:960px;
height:900px;
background:#8A8888;
margin:0 auto;
padding:0;
}
#nav {
background:#363535;
height:50px;
}
#nav ul {
list-style:none;
padding:0;
margin:0;
}
#nav ul li {
background:#363535;
width:170px;
height:50px;
text-align:center;
float:left;
}
#nav ul li a {
font-size:22px;
line-height:50px;
display:block;
text-decoration:none;
color:#D31496;
}
#nav ul li a:hover {
background:#C41BCA;
color:black;
}
#nav ul li a:active {
background:#514E4E;
color:#9314C2;
}
#nav ul li > ul {
display:none;
}
#nav ul li:hover > ul {
display:block;
}
#nav ul li ul li ul {
position:absolute;
top:0;
left:100%;
}
#nav ul > li {
position:relative;
}
#nav i {
float:right;
font-size:35px;
color:#218BE4;
text-align:center;
line-height:50px;
padding:0 20px;
}
正如04FS所说,您所有的li
元素都是浮动的。如果您以%为单位指定宽度,则该宽度应该对齐(看起来会更糟)。我建议不要再进行任何编辑,因为它看起来还不错。