浮動溢位和高度塌陷
因為浮動會使當前標籤產生向上浮的效果,同時會影響到前後標籤、父級標籤的位置及 width height 屬性。
而且同樣的**,在各種瀏覽器中顯示效果也有可能不相同,這樣讓清除浮動更難了。
解決浮動引起的問題有多種方法,但有些方法在瀏覽器相容性方面還有問題。
11111111
22222222
333333333
4444444
原理:新增乙個空div,利用css提高的clear:both清除浮動,讓父級div能自動獲取到高度
優點:簡單,**少,瀏覽器支援好,不容易出現怪問題
缺點:不少初學者不理解原理;如果頁面浮動布局多,就要增加很多空div,讓人感覺很不爽
.clearfix:after
.clearfix
.container
.box01
.box02
.box03
.box04
11111111
22222222
333333333
4444444
原理:ie8以上和非ie瀏覽器才支援:after,原理和方法2有點類似,zoom(ie轉有屬性)可解決ie6,ie7浮動問題
缺點:**多,不少初學者不理解原理,要兩句**結合使用,才能讓主流瀏覽器都支援。
11111111
22222222
333333333
4444444
原理:必須定義width或zoom:1,同時不能定義height,使用overflow:hidden時,瀏覽器會自動檢查浮動區域的高度
優點:簡單,**少,瀏覽器支援好
缺點:不能和position配合使用,因為超出的尺寸的會被隱藏。
後面這2種也可以清除浮動,但是不推薦,這5種清除浮動的方法,合理使用即可
CSS清除浮動常用方法
css開發過程中清楚浮動是難以避免要使用的,今天犧牲午覺的時間整理一下吧!一 給父級加高度 這樣肯定不存在父級坍塌的問題了 問題 擴充套件性不好,如果要自適應高度就悲催了。二 讓父級浮動 父級和子級都浮動就不存在這個問題了 問題 頁面中所有元素都加浮動,margin左右自動失效 floats bad...
CSS清除浮動常用方法小結
本文 常用的清除浮動的方法有以下三種 此為未清除浮動源 執行 無法檢視到父級元素淺黃色背景。left right 三種清除浮動方法如下 1 使用空標籤清除浮動。我用了很久的一種方法,空標籤可以是div標籤,也可以是p標籤。我習慣用,夠簡短,也有很多人用,只是需要另外 為其清除邊框,但理論上可以是任何...
CSS 清除浮動的幾種常用方法
本文總結自,b站 pink老師 鳴謝 為什麼要清除浮動?由於父級盒子很多情況下,不方便給高度,但是子盒子浮動又不占有位置,最後父級盒子高度為零時就會影響下面的標準流盒子。清除浮動語法 選擇器 屬性及描述 屬性值描述left 不允許左側有浮動元素 清除左側浮動的影響 right 不允許右側有浮動元素 ...