1、使用时清除元素本身,不影响其他元素。当页面有两个div被设置成向左浮动时,想要让第二个元素下移,
这是就要让第二个元素设置clear:left,让第二个元素左边不存在浮动元素
2、clear:both清除左右两边的元素。
它利用清除浮动来把外层的div撑开,我们在将内部div都设置成浮动之后,就会发现,外层div的背景没有显示,
原因就是外层的div没有撑开,太小,所以能看到的背景仅限于一条线。
三、clearfix:清除浮动
如果有一个DIV作为外部容器,内部的DIV如果设置了float样式,则外部的容器DIV因为内部没有clear,导致不能被撑开
①在外部div容器的内部中设置一个div的style属性为:clear:both;可以将外部div撑开,在子集清除浮动。但是这样做多了一个无关紧要的div。
②最好的解决方式就是在外层加入一个类clearfix,让其在div容器最后添加内容,
内容不显示,但仍然占据空间,清除两边的浮动,不必在html文件中写入大量无意义的空标签。
.clearfix { *zoom:1;} 这是针对于IE6的,因为IE6不支持:after伪类,这个神奇的zoom:1让IE6的元素可以清除浮动来包裹内部元素。
③overflow:hidden属性相当于是让父级紧贴内容,这样即可紧贴其对象内内容,从而实现了清除浮动