css清除浮动,清除浮动的几种方法

1、在非IE浏览器(如Firefox)下,当容器的高度为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象。这个现象叫浮动溢出,为了防止这个现象的出现而进行清除浮动。

2、清除浮动的方法:

(1)使用clear:both。如果我们明确的知道紧接着浮动元素后面的元素,可以使用这种方法来清除浮动。这种方法简单,容易使用,不需要hack,语义化也不错。

(2)空div方法。这个方法一般是不推荐使用的,虽然没有什么副作用的,但因为这个div纯粹是为了表现,没有语义。

(3)自定义一个 cf 类,对容器添加 cf 类可以清除浮动

.cf:before, .cf:after {
 content: '';
 display: block;
 clear: both;
 height: 0;
 overflow: hidden;
 visibility: hidden;
 }