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
<
style
type
=
"text/css"
>
02
.div1
03
.div2
04
05
.left
06
.right
07
08
<
div
class
=
"div1"
>
09
<
div
class
=
"left"
>left
10
<
div
class
=
"right"
>right
11
12
<
div
class
=
"div2"
>
13
div2
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 在左右兩側均不允...