1. 程式人生 > 實用技巧 >理解 四種清楚浮動的方法

理解 四種清楚浮動的方法

用 clear 樣式,對指定元素進行清除浮動操作:

<div class="divclear"></div>

.divclear {
  clear: both;  // both這個屬性是兩側清除,還有左邊或右邊(left, right)
}

這是簡單的對指定元素進行清除浮動操作,這樣的清除浮動,只關心指定元素,使該元素的兩側不出現其他浮動。並不關心其他類似“父盒子高度支撐”的問題。

父元素結束標籤之前插入一個清除浮動的塊級元素:


<div class="topDiv">
    <div class="textDiv">...</div>
    <div class="floatDiv">float
left</div> <div class="blankDiv"></div> </div> .blankDiv { clear: both; } 這樣的處理等於,是給父元素的結束標籤之前增加了一個“塊級元素”,然後給這個“塊級元素”賦予clear的屬性,幫助父盒子清除浮動,並且支撐起來了父盒子的高度。

利用新增偽元素清除浮動:

<div class="divclear clearfix"></div>
  display: block;
  clear: both;
  height: 0;
}

這個方法其實類似於第二個給父元素結束標籤前增加“塊級元素”,都是利用新增塊級元素的方式去清除浮動,並且支撐父盒子高度。

利用 overflow 清除浮動:

當元素設定了overflow樣式,且值不為visible時,該元素就建構了一個BFC(塊級格式化上下文),所謂BFC有個特點,就是BFC的高度是要包含浮動元素的,
所以,給父元素設定了 overflow:auto 的屬性後,該父元素的高度就被撐起來了。