CSS之浮动那些事

时间:2023-03-09 00:19:53
CSS之浮动那些事

1.清除浮动

下面是两种常用的方式,而这两招也够用了(不用千招会,只需一招精)。

1.结尾处加空div标签 clear:both

<style type="text/css"> 

.left{float:left;}
.right{float:right;} /*清除浮动代码*/
.clearfloat{clear:both}
</style> <div>
<div class="left">Left</div>
<div class="right">Right</div>
<div class="clearfloat"></div>
</div>

缺点:每次清除浮动都加空div,影响了HTML的结构,例如如果要算div的个数,都会被影响到。

2.父级div定义 伪类:after

<style type="text/css"> 

.left{float:left;}
.right{float:right;} .clearfloat:after{
content:"\200B";/*unicode字符里零宽度空格*/
display:block;
height:0;
clear:both;
}
</style> <div class="clearfloat">
<div class="left">Left</div>
<div class="right">Right</div>
</div>

我更倾向使用这种清除浮动的方式,不增加HTML,浏览器兼容性也好,写法在我看来也简洁。

PS:不过如果要兼容IE6、IE7,就需要加多个zoom:1。