浮動 清除浮動

2021-08-03 16:30:30 字數 915 閱讀 6459

在css布局中分為內聯元素(display:inline)和塊狀元素(display:block),塊狀元素缺省會佔據一行,可設定高度寬度以及邊距,而內斂元素不會也不能設定。常見的內斂元素有:a、span、input、select,常見的塊狀元素有:h1-h6,p,div,ul,table。

浮動元素是設定float為非none值的元素,這時該元素會自動被設定成塊元素,可以設定寬度、高度以及邊距。浮動元素,顧名思義,使該元素浮動在其他元素之上,離開了原來的文件流,直到浮動到父元素的左右邊距(上下邊距不受限制)或者左、右方遇到其他設定了float的元素。而其附近設定的浮動元素會跟其邊距相鄰,表面上跟內聯元素似的。而非浮動元素則相對複雜一些,分一下兩種情況:浮動元素後邊的元素若是非浮動行內元素且因為定位產生重疊時,行內元素邊框、背景和內容都在該浮動元素「之上」顯示,若是非浮動塊級元素跟在浮動元素後邊且在定位後產生重疊時,該塊級元素邊框和背景在該浮動元素「之下」顯示,只有內容在浮動元素不在非浮動元素的部分顯示。

① 浮動的元素脫離標準文件流

② 浮動的元素相互貼靠

③ 浮動的元素具有「字圍」現象

④ 浮動的元素會對後面的元素造成影響。

給父盒子加上高度(專案中不常用) 因為我們的元素基本上是由內容撐起高度。不會給固定的高度。

外牆法(在浮動的兩個父盒子之間加上乙個div,這個div樣式為clear:both) 這個時候,浮動清除了。margin也出現了。但是父盒子還是沒有高度。

內牆法(在浮動的父盒子最前面或者最後面加上乙個div,這個div的樣式為clear:both) 父盒子有了高度,但是頁面中出現了很多無用的div

overflow:hidden(給第乙個浮動的父盒子加上這個屬性。也能清除浮動,本意是溢位盒子的部分隱藏起來)

這種方法,既能清除浮動,又讓盒子有了高度,還不會出現莫名其妙的空盒子。所以,推薦使用!

閉合浮動(清除浮動)

什麼是css清除浮動?網路上流行的說法是 在非ie瀏覽器 如firefox 下,當容器的高度 height 為auto,且容器的內容中有浮動 float為left或right 的元素,在這種情況下,容器的高度不能自動伸長以適應內容的高度,使得內容溢位到 容器外面而影響 甚至破壞 布局的現象。這個現象...

浮動和清除浮動

浮動的框可以向左或向右移動,直到他的外邊緣碰到包含框或另乙個浮動框的邊框為止。由於浮動框不在文件的普通流中,所以文件的普通流的塊框表現得就像浮動框不存在一樣。浮動的塊框會漂浮在文件普通流的塊框上。浮動元素引起的問題 1 父元素的高度無法被撐開,影響與父元素同級的元素。2 與浮動元素同級的非浮動元素 ...

浮動與清除浮動

left 元素向左浮動。right 元素向右浮動。none 預設值。元素不浮動,並會顯示在其在文字中出現的位置。浮動的特性 浮動元素會從普通文件流中脫離,但浮動元素影響的不僅是自己,它會影響周圍的元素對齊進行環繞。不管乙個元素是行內元素還是塊級元素,如果被設定了浮動,那浮動元素會生成乙個塊級框,可以...