当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 菜单 stepdown 呈递下沉的解决方法

CSS样式表
base href 使用方法详解
html label标签的使用教程
使用CSS不用程序实现文字自动截断 用省略号代替
CSS hack实现 CSS完美兼容IE6/IE7/FF的通用方法
网页布局+纯CSS纵向下拉菜单 IE6/IE7兼容
CSS图片拼合生成器只需上传zip包即可
用iframe margin实现调用其他网页的某一区域的方法
用css alpha 滤镜 实现input file 样式美化代码
RGB 加成色 说明
为了防止乱码,请将用于页面编码的meta charset放到title的前面
DIV+CSS布局中不推荐使用的标签集合Dont Use These Tags
大家看了就明白了css样式中类class与标识id选择符的区别小结
DL.DT.DD实现左右的布局简单例子
css布局网页水平居中常用方法
使用CSS框架布局的缺点和优点小结
Web2.0下XHTML+CSS 设计需要注意的地方小结
table高级应用把表格进行到底(必看)
css强制换行 css强制不换行的css方法
Div CSS absolute与relative的区别小结
css实现文字垂直居中的代码

CSS样式表 中的 菜单 stepdown 呈递下沉的解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-12   浏览: 122 ::
收藏到网摘: n/a



关于“stepdown”,确实不知道能用什么精辟的语言来形容他,其实就是浮动层下呈递下沉状态,如上图所示
这个画面让我们不难相处,笔者是想做一个菜单之类的东西,每个块是左浮动。
那让我们看看代码应该怎么些吧:

像大多数菜单一样,应该创建一个无序列表如下:
Xhtml:

代码如下:

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

Css:

代码如下:

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;
}

这些块都是左浮动的,所以他们应该在一条水平线上,对么?答案是错的,之所以呈递下沉现象,就在于列表元素当中包含了锚点元素,虽然他们也是block-level元素,但是这些块并不浮动。这很混乱,因为块元素就像<br/>一样很自然的就回行了。这就导致了,不论当前行高多少,下一个块都是下沉的,这就是"stepdown"。好啦解释完毕了

补救的办法如下:

代码如下:

ul#menu li {display: inline; /* Prevents "stepdown" */}

这样就可以让菜单在一个水平线上啦~~,如下:

好了总结完毕,虽然很多人知道这个,但我想也曾经以疑惑过,why??这下清楚啦~~~
如果觉得我说的不对的那就看原版吧,哈哈