理解 四種清楚浮動的方法
阿新 • • 發佈:2020-08-26
用 clear 樣式,對指定元素進行清除浮動操作: <div class="divclear"></div> .divclear { clear: both; // both這個屬性是兩側清除,還有左邊或右邊(left, right) } 這是簡單的對指定元素進行清除浮動操作,這樣的清除浮動,只關心指定元素,使該元素的兩側不出現其他浮動。並不關心其他類似“父盒子高度支撐”的問題。
父元素結束標籤之前插入一個清除浮動的塊級元素: <div class="topDiv"> <div class="textDiv">...</div> <div class="floatDiv">floatleft</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 的屬性後,該父元素的高度就被撐起來了。