当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > 闭合浮动元素超级简单的方法

CSS样式表
Web设计中的黄金分割分析
简单的CSS 下拉导航菜单实现代码
Float 菜单水平居中简单方法
网页设计中常用的19个Web安全字体
网页设计中的中国传统色彩速查表 颜色值
css 清除浮动的新方法
CSS 字体单位em简介
CSS下10个节约开发时间的技巧
css 等宽导航栏设计技巧
CSS reflow实例教程
IE6下Select元素被div等元素覆盖的解决办法
需要知道的CSS3动画技术
一个很有用的Firefox和IE插件
IE6,IE7下实现white-space:pre-wrap
CSS 圆角框进行JS封装版
基于链接关系的微格式 使用rel属性
css 微格式 XFN规范
网页简历结构和语义信息 hResume微格式
hCalendar微格式 关于事件和基于时间或地点的活
CSS下!important属性

CSS样式表 中的 闭合浮动元素超级简单的方法


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

无意中看到的一个非常不错的小技巧.是关于用CSS处理闭合浮动元素的方法,收藏了.
关于闭合浮动元素(clearing float)的方法现在已经很多了,你还不了解的话去old9的blog看看,有一篇闭合浮动元素。
这些方法我最喜欢就是 使用:after 伪类动态的嵌入一个用于清除浮动的元素,可惜代码量太大了,看着不够简洁。现在我看到有个方法超级简单。赶紧介绍一下。原文在:http://annevankesteren.nl/2005/03/clearing-floats
原理是这样的,外围元素之所以不能很好的延伸,问题出在了overflow上,因为overflow不可见。见W3C的解释
引用内容:
In addition, if the element has any floating descendants whose bottom margin edge is below the bottom, then the height is increased to include those edges. Only floats that are children of the element itself or of descendants in the normal flow are taken into account, e.g., floats inside absolutely positioned descendants or other floats are not.

现在只要将给外围元素添加一个overflow:auto;就可以解决问题,结果是除了IE,真的可以解决。下来就要解决ie的问题了,再加上_height:1%; ,这个问题就完全解决了。
下面是我做的三个例子作为比较
1.没有闭合浮动元素
2.非IE下闭合浮动元素
3.完全闭合元素
点击运行可以看到效果:
[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]