浮動和清除浮動

2021-08-04 03:01:22 字數 763 閱讀 5196

浮動的框可以向左或向右移動,直到他的外邊緣碰到包含框或另乙個浮動框的邊框為止。由於浮動框不在文件的普通流中,所以文件的普通流的塊框表現得就像浮動框不存在一樣。浮動的塊框會漂浮在文件普通流的塊框上。

浮動元素引起的問題:

(1)父元素的高度無法被撐開,影響與父元素同級的元素。

(2)與浮動元素同級的非浮動元素(內聯元素)會跟隨其後。

(3)若非第乙個元素浮動,則該元素之前的元素也需要浮動,否則會影響頁面顯示的結構。

解決方法:

使用css中的clear:both;屬性來清除元素的浮動可解決2、3問題,對於問題1,新增如下樣式,給父元素新增clearfix樣式:

.clearfix:after

.clearfix /* for ie/mac */

清除浮動的幾種方法:

(1)父級div定義height。

(2)額外標籤法,

(缺點:不過這個辦法會增加額外的標籤使html結構看起來不夠簡潔。)

(3)使用after偽類

#parent:after

(4)父級div也浮動,需要定義寬度。

(5)父級div定義display:table。

(6)設定overflow為hidden或者auto。

position:absolute和float屬性的異同

共同點:對內聯元素設定float和absolute屬性,可以讓元素脫離文件流,並且可以設定其寬高。

不同點:float仍會佔據位置,absolute會覆蓋文件流中的其他元素。

浮動和清除浮動

浮動的框可以向左或向右移動,直到它的外邊緣碰到包含框或另乙個浮動框的邊框為止。由於浮動框不在文件的普通流中,所以文件的普通流中的塊框表現得就像浮動框不存在一樣。如果包含框太窄,無法容納水平排列的三個浮動元素,那麼其它浮動塊向下移動,直到有足夠的空間。如果浮動元素的高度不同,那麼當它們向下移動時可能被...

css浮動和清除浮動

css樣式的float浮動屬性,用於設定標籤物件 如 標籤盒子 標籤 標籤 標籤等html標籤 的浮動布局,浮動也就是我們所說標籤物件浮動居左靠左 float left 和浮動居右靠右 float right 一般情況是乙個盒子裡使用了css float浮動屬性,導致父級物件盒子不能被撐開,這樣cs...

CSS浮動和清除浮動

包裹性指的是元素尺寸剛好容納內容,表現得就像diaplay inline block一樣 具有包裹性的其他屬性 display inline block position absolute fixed sticky overflow hidden scroll會使父元素高度塌陷 為了實現文字環繞效果...