我有一个设置为100%的div,并且在另一个div中,它居中并设置为883px.
导航是一个列表,但如果我将float:right元素应用于此元素,则它会颠倒列表的顺序.当然我可以改变代码中的顺序但是必须有更好的方法吗?
<div id="navigation"><!-- START NAVIGATION -->
<ul class="navigation">
<li><a href="#" title="" alt="" class="current">home</a></li>
<li><a href="#" title="" alt=""><img src="images/navline.png" align="right">portfolio</a></li>
<li><a href="#" title="" alt="">blog</a></li>
<li><a href="#" title="" alt="">get in touch</a></li>
</ul>
</div>
<div id="border"></div><!-- END NAVIGATION -->
<div style="clear:both"></div>
Run Code Online (Sandbox Code Playgroud)
而CSS ......
#navigation {
width:100%;
background-color:#383a3c;
height:43px;
}
#navigation ul {
width:883px;
margin:0px auto;
}
ul.navigation {
font-family:'ChunkFiveRegular', Arial, sans-serif;
font-size:18px;
}
#navigation li a {
display:block;
margin:13px 0px 0px 0px;
text-decoration:none;
color:#8cd8db;
float:right;
}
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助向我展示我的方式错误吗?
Jos*_*tos 13
向右浮动会反转元素.这是预期的行为.
如果你想让菜单向右对齐,那么你需要让ul元素浮动到右边,但里面的li元素必须有一个浮动.
#navigation {
width:100%;
background-color:#383a3c;
height:43px;
}
#navigation ul {
width:883px;
margin:0px auto;
}
ul.navigation {
font-family:'ChunkFiveRegular', Arial, sans-serif;
font-size:18px;
float: right;
}
#navigation li {
float: left;
padding: 0px 10px;
}
#navigation li a {
display:block;
margin:13px 0px 0px 0px;
text-decoration:none;
color:#8cd8db;
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,菜单仍然不会与右边对齐,因为您指定了宽度:883px; 到ul元素.如果您希望它与右侧对齐,则只需删除此宽度即可.