当前位置: 首页 > 图文教程 > 专题中心 > XHTML教程、HTML教程与W3C教程专题 > CSS教程教程 > CSS教程:div设置float后高度不自动增加

CSS教程教程
CSS教程:position属性
CSS教程:vertical-align的值
CSS教程:设计制作网页的CSS经验
CSS教程:完美的绝对底部
CSS教程:网页字体的设置和控制
CSS教程:练习层DIV的定位小实例
css教程:DIV垂直居中的办法
css教程:网页字体及字体大小的设计
CSS教程:表格的nobr终极解决方案
CSS教程:关于网页图片的属性
CSS教程:元素层叠级别及z-index
css教程:css指令,兼容,注释,selector
css教程:css和document
CSS教程:网页英文字体和中文字体应用
css教程:可读性可维护性良好的CSS文件
CSS教程:网页颜色的几种表示
CSS教程:优先级问题的考虑实例
CSS教程:专门介绍滑动门
CSS教程:legend标签设定宽度
CSS教程:容器定位

CSS教程教程 中的 CSS教程:div设置float后高度不自动增加


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

相关文章:http://www.ruanchen.com/"http://www.ruanchen.com/" style="color: #000">http://www.ruanchen.com/"COLOR: red">闭合浮动元素”或“清除浮动元素”,但想了一下,还是不修改为好。因为从这个题目我们可以更加容易的看出,如果您没有闭合(清除)浮动元素,它将造成的后果是-----div的高度不能自动增加

言归正传
目前用来清除“闭合(清除)浮动”的方法,主要是一下四种

1.    额外标签法

这种方法就是向父容器的末尾再插入一个额外的标签,并令其清除浮动(clear)以撑大父容器。这种方法浏览器兼容性好,没有什么问题,缺点就是需要额外的(而且通常是无语义的)标签。
我个人不喜欢这种方法,但是它确实是W3C推荐的方法

<div style="clear:both;"></div>

或者使用

<br style="clear:both;" />

2.    使用after伪类

这种方法就是对父容器使用after伪类和内容声明在指定的现在内容末尾添加新的内容。经常的做法就是添加一个“”,因为它比较小不太引人注意。然后我们再利用它来清除浮动(闭合浮动元素),并隐藏这个内容
这种方法兼容性一般,但经过各种 hack 也可以应付不同浏览器了,同时又可以保证html 比较干净,所以用得还是比较多的。

#outer:after{  
    content:".";  
    height:0;  
    visibility:hidden;  
    display:block;  
    clear:both;  
}


3.    设置overflow为hidden或者auto

这种做法就是将父容器的overflow设为hidden或auot就可以在标准兼容浏览器中闭合浮动元素.
不过使用overflow的时候,可能会对页面表现带来影响,而且这种影响是不确定的,你最好是能在多个浏览器上测试你的页面

4.    浮动外部元素,float-in-float

这种做法就是让父容器也浮动,这利用到了浮动元素的一个特性——浮动元素会闭合浮动元素。这种方式在 IE/Win 和标准兼容浏览器中都有较好的效果,但缺点也很明显——父容器未必想浮动就浮动的了,毕竟浮动是一种比较特殊的行为,有时布局不允许其浮动也很正常。
个人不是很赞成这种做法,但是从dudo最后的总结总可以看出,他好像很赞成这种做法