1. 程式人生 > >css中清除浮動的幾種方法(撐起浮動元素父元素的高度)

css中清除浮動的幾種方法(撐起浮動元素父元素的高度)

css浮動會使子元素脫離文件流,有些情況下會使其父元素失去高度,從而影響頁面的整體佈局,造成意想不到的佈局效果,這裡總結了幾種常用的清除浮動影響的方法,簡單介紹各種方法的適用範圍和優缺點。

1.設定父元素的overflow屬性的屬性值為"hideen",但是此方法會影響到於元素下原本需要有溢位效果的元素的正常顯示,需要保證父元素下沒有用到溢位效果;

.father{
   overflow:hidden;
}
2.直接手動設定父元素的高度為合適的值,達到撐起父元素的效果,但是使用起來很麻煩。在有些特殊情況下,父元素的高度需要自適應,所以不適合給父元素設定固定的高度;

3.使用:after偽元素選擇器,選擇父元素,並使用內容生成(content)屬性生成空字元即可,設定其屬性為both。生成元素將永遠處於父元素末尾撐起父元素高度。這種方法應用起來比較方便,可在css中定義好特定分類,提高程式碼重用;也可以不適用選擇器,選擇手動在父元素末尾新增空標籤,併為其設定clear:both;屬性值對。

.father:after{
  content:"";
 height:0;
 visibility:hidden;
 display:block;
 clear:both;
}
4.在父元素內容的結尾使用<br />換行標籤,但是換行標籤會給父元素新增額外的空白區域(額外高度),並清除<br />標籤的各種高度,也可搭配:after為元素選擇器和內容生成屬性一起使用;