浮动会漂浮于普通流之上,像浮云一样,但是只能左右浮动。正是这种特性,导致框内部由于不存在其他普通流元素了,表现出高度为0(高度塌陷)
下面列举清除浮动的几种方法
- 添加额外标签,例如
<div style="clear:both"></div>
- 使用br标签和其自身的html属性,例如
<br clear="all" />
- 父元素设置 overflow:hidden;在IE6中还需要触发hasLayout,例如zoom:1
- 父元素设置 overflow:auto 属性;同样IE6需要触发hasLayout
- 父元素也设置浮动
- 父元素设置display:table
- 使用:after 伪元素;由于IE6-7不支持:after,使用 zoom:1触发 hasLayout