清除浮動本質

2021-09-25 19:49:56 字數 1168 閱讀 2185

清除浮動主要是為了解決父級元素因為子集浮動引起內部高度為0的問題

問題:如果孩子加浮動那麼孩子脫離標準流而父親沒有高度,這時下方的盒子就會公升上來

解決方法:

1.給父親高度

2. 如果不方便給高(因為有時不知道裡面的孩子有多高,比如新聞,不知道裡面會有多少字),clear屬性用於清除浮動,基本語法格式如下:

選擇器

屬性值描述

left

不允許左側有浮動元素(清除左側浮動的影響)

right

不允許右側有浮動元素(清除右側浮動的影響)

both

同時清除左右兩側浮動影響(經常用)

是通過在浮動元素末尾新增乙個空的標籤 例如

,或其他標籤br等亦可

在浮動盒子後面新增乙個空盒子

.father 

.damao

.ermao

.xiao

.clear

優點:通俗易懂,書寫方便

缺點:增加無意義的標籤,結構化較差

可以通過觸發bfc的方式,開始實現清除浮動效果。

可以給父級新增:overflow為hidden    auto     s'scroll        都可以實現。
優點: **簡潔

缺點: 內容增多時候容易造成不會自動換行導致內容被隱藏掉,無法顯示需要溢位的元素。

:after 方式為空元素的公升級版,好處是不用單獨加標籤了

使用方法:

.clearfix:after 

.clearfix /*ie6.7專有*/

.clearfix:after 

.clearfix

優點:符合閉合浮動思想,結構語義化正確

缺點:由於ie6-7不支援,使用zoom:1觸發haslayout

注意content"."裡面盡量跟乙個小點,或者其他,盡量不要為空,否則再firefox7.0前的版本會有生成空格

.clearfix:before, .clearfix:after 

.clearfix;after

.clearfix

推薦此種方法

浮動 清除浮動

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

CSS清除浮動 清除float浮動

css清除浮動方法集合 一般浮動是什麼情況呢?一般是乙個盒子裡使用了css float浮動屬性,導致父級物件盒子不能被撐開,這樣css float浮動就產生了。浮動產生樣式效果截圖 本來兩個黑色物件盒子是在紅色盒子內,因為對兩個黑色盒子使用了float浮動,所以兩個黑色盒子產生了浮動,導致紅色盒子不...

CSS清除浮動 清除float浮動

css清除浮動方法集合 一般浮動是什麼情況呢?一般是乙個盒子裡使用了css float浮動屬性,導致父級物件盒子不能被撐開,這樣css float浮動就產生了。浮動產生樣式效果截圖 本來兩個黑色物件盒子是在紅色盒子內,因為對兩個黑色盒子使用了float浮動,所以兩個黑色盒子產生了浮動,導致紅色盒子不...