我无法让最终的LI元素在我的导航容器中对齐。我已经让其他四个间隔很好,并且有足够的空间让第五个元素显示在容器中,但它会以某种方式被推下来。我很困惑为什么会这样。下面是HTML和CSS。任何帮助非常感谢!
<div class='top_menu_wrapper'>
<div class='top_menu_center'>
<ul>
<li class='menu_link menu'>Who We Are</li>
<li class='menu_link menu'>Family House</li>
<li class='menu_link ypac_logo menu'> IMAGE PLACEHOLDER</li>
<li class='menu_link menu'>Upcoming Events</li>
<li class='menu_link menu'>Get Involved</li>
</ul>
</div>
</div>
CSS:
.top_menu_wrapper{
min-height: 65px;
border: 1px solid black;
position: fixed;
width:100%
}
.top_menu_center{
width:65%;
border: 1px solid black;
margin: 0 auto;
height:100px;
}
.top_menu_center ul{
list-style-type:none;
width:100%;
margin:0 0 0 0;
padding:0 0 0 0;
height:100px;
}
.top_menu_center li{
display:inline-block;
height:100px;
width:20%;
margin:0 0 0 0;
padding:0 0 0 0;
text-align:center;
}
答案 0 :(得分:0)
您需要将inline-block
更改为inline
.top_menu_center li{
display:block;
float:left;
height:100px;
width:20%;
margin:10px 0;
padding:0 0;
text-align:center;
}
你会遇到一些间距问题所以我在这里设置了一个jsfiddle:http://jsfiddle.net/rileychuggins/YF7DX/
答案 1 :(得分:0)
出于某种原因,li
宽度的总和超过100%。因此,最后一个元素被推出框外。无论如何,如果你将li
的宽度从20%更改为19%,它会在Chrome中更好地适应。在这种情况下,你可以研究为什么5 * 20%!= 100%。
答案 2 :(得分:0)
你应该浮动li
并设置它,以便ul
清除浮动。
这是一个小伙伴:http://jsfiddle.net/efgdY/
作为旁注,如果您打算将它们按下(通过看起来像原始CSS中的10-15像素),您可以设置padding-top
值并添加box-sizing: border-box;
.top_menu_center li
。
答案 3 :(得分:0)
您可以尝试使用float:left而不是display:inline
.top_menu_center li{
float: left;
height:100px;
width:20%;
margin:0 0 0 0;
padding:0 0 0 0;
text-align:center;
}