清除浮動的9種方法

2021-08-10 13:13:27 字數 2538 閱讀 8233

1、父級div定義heigh

原理:父級div手動定義height,就解決了父級div無法自動獲取到高度的問題

優點:簡單,**少,容易掌握

缺點:只適合高度固定的布局,要給出精確的高度,如果高度和父級div不一樣時,會產生問題

建議:不推薦使用,只建議高度固定的布局時使用

2、結尾處加空div標籤clear:both

原理:新增乙個空div,利用css提高的clear:both清除浮動,讓父級div能自動獲取到高度

優點:簡單,**少,瀏覽器支援好,不容易出現怪問題

缺點:不少初學者不理解原理;如果

頁面浮動布局多,就要增加很多空div,讓人感覺很不爽

建議:不推薦使用,但此方法是以前主要使用的一種清除浮動方法

3、父級div定義偽類:after和zoom

原理:ie8以上和非ie瀏覽器才支援:after,原理和方法2有點類似,zoom(ie轉有屬性)可解決ie6,ie7浮動問題

優點:瀏覽器支援好,不容易出現怪問題(目前:大型

**缺點:**多,不少初學者不理解原理,要兩句**結合使用,才能讓主流瀏覽器都支援

建議:推薦使用,建議定義公共類,以減少css**

4、父級div定義overflow:hidden

原理:必須定義width或zoom:1,同時不能定義height,使用overflow:hidden時,瀏覽器會自動檢查浮動區域的高度

優點:簡單,**少,瀏覽器支援好

缺點:不能和position配合使用,因為超出的尺寸的會被隱藏

建議:只推薦沒有使用position或對overflow:hidden理解比較深的朋友使用

5、父級div定義overflow:auto

原理:必須定義width或zoom:1,同時不能定義height,使用overflow:auto時,瀏覽器會自動檢查浮動區域的高度

優點:簡單,**少,瀏覽器支援好

缺點:內部寬高超過父級div時,會出現滾動條。

建議:不推薦使用,如果你需要出現滾動條或者確保你的**不會出現滾動條就使用吧。

6、父級div也一起浮動

原理:所有**一起浮動,就變成了乙個整體

優點:沒有優點

缺點:會產生新的浮動問題。

建議:不推薦使用,只作了解。

7、父級div定義display:table

01<styletype="text/css">

02.div1

03.div2

04

05.left

06.right

07

08<divclass="div1">

09<divclass="left">left

10<divclass="right">right

11

12<divclass="div2">

13div2

14>

原理:將div屬性變成**

優點:沒有優點

缺點:會產生新的未知問題

建議:不推薦使用,只作了解

8、結尾處加br標籤clear:both

原理:父級div定義zoom:1來解決ie浮動問題,結尾處加br標籤clear:both

9、替代浮動方法要浮動的元素設定

display:inline-block

優點:整體**簡潔了很多,這是他的價值所在

缺點:有瀏覽器相容問題;只有特定的場合適用,像水平選單條之類,布局之類,並不適合文字環繞這些真正需要float的

場合;元素間的純空白

會造成佔位

清除浮動的八種方法

清除浮動是每乙個 web前台設計師必須掌握的機能。css清除浮動大全,共8種方法。浮動會使當前標籤產生向上浮的效果,同時會影響到前後標籤 父級標籤的位置及 width height 屬性。而且同樣的 在各種瀏覽器中顯示效果也有可能不相同,這樣讓清除浮動更難了。解決浮動引起的問題有多種方法,但有些方法...

清除浮動的八種方法

浮動是什麼?浮動元素會脫離文件流進行左浮或者右浮,直到碰到父級元素或者其他的浮動元素。為什麼清除浮動 浮動會導致父元素高度坍塌,因為浮動脫離文件流,浮動以後不佔文件流的位置,撐開的父元素高度肯定會坍塌。清除浮動的八種方法 1 父級div給出固定的高度。手動定義height,這樣就解決了父級元素獲取不...

css面試點 清除浮動方法(9種方法)

浮動的定義 使元素脫離文件流,按照指定方向發生移動,遇到父級邊界或者相鄰的浮動元素停了下來。為什麼要清除浮動?清除浮動主要是為了解決,父元素因為子級元素浮動引起的內部高度為0的問題 當父元素不給高度的時候,內部元素不浮動時會撐開,而浮動的時候,父元素變成一條線 clear both 在左右兩側均不允...