在CSS的布局中,
clear是一個非常常見的屬性,它的作用是控制元素在浮動元素周圍的布局。
在使用浮動元素時,可能會面臨一個問題,就是浮動元素對周圍元素的影響。如果沒有正確設置,浮動元素可能會覆蓋其他元素或者影響布局的整體效果。這時候,
clear屬性就發揮作用了。
clear屬性有四個可選值,分別是:
left, right, both, none。默認值為
none。
如果設置了
clear:left,則元素不能在其左側存在浮動元素。同樣的,
clear:right則表示元素不能在右側存在浮動元素,
clear:both則表示元素兩側都不允許存在浮動元素。
.clearfix { clear:both; } .float-left { float:left; } .float-right { float:right; }
通常,清除浮動的常見方式是使用CSS偽元素(:after)。代碼如下:
.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; } .clearfix { zoom:1; }
在上面的例子中,我們使用偽元素生成了一個隱藏的塊級元素,并利用它的清除浮動的特性來解決布局中的問題。同時,為了兼容IE6/7,我們使用.zoom:1來引發IE的“hasLayout”屬性。
總之,在布局中使用浮動元素時,清除浮動是必不可少的。四種清除浮動的方式可以根據實際情況選擇使用,清楚浮動能夠保證布局的清晰和整潔。