css导航-台阶式导航分析及解决_css导航下坠

如果你在创建css菜单时出现上述情况,那么我建议你认真阅读下,或许偶然你解决了,但是你并不知道问题的关键,是什么原因导致这样呢。如果你没有遇到过,那么你更应该仔细阅读下,因为很可能你马上就会遇到。下面我们一起来分析下。
html代码如下:

<ul id="menu">
 <li><a href="#">My</a></li>
 <li><a href="#">Little</a></li>
 <li><a href="#">Menu</a></li>
</ul>

首先我们设置a链接的css如下:(因为想要把a链接变成整个区块,而不是仅文字,所以设置a为block)

ul#menu li a {
 display: block;
 width: 130px;
 text-align: center;
 font-weight: bold;
 float: left;
 color: white;
 font-size: 1.2em;
 text-decoration: none;
 background: #600;
}

按正常思路,现在应该出现我们需要的效果,可是我们会发现这时我们的效果是上面的那个台阶式的菜单。 原因是因为我们的li是区块元素,我们没有设置浮动,它显示的是一行,所以解决方案是将菜单的display设置为inline。

ul#menu li {  display: inline; }

这样就会出现我们希望的效果:
css导航-台阶式导航分析及解决_休闲_02
英文原文:css-tricks.com/prevent-menu-stepdown/

这个在IE7 下才会有 IE6 没有测试!估计是IE的bug.