CSS清除浮動 清除float浮動

2021-08-04 20:59:00 字數 3590 閱讀 9213

css清除浮動方法集合

一般浮動是什麼情況呢?一般是乙個盒子裡使用了css float浮動屬性,導致父級物件盒子不能被撐開,這樣css

float浮動就產生了。

浮動產生樣式效果截圖

本來兩個黑色物件盒子是在紅色盒子內,因為對兩個黑色盒子使用了float浮動,所以兩個黑色盒子產生了浮動,導致紅色盒子不能撐開,這樣浮動就產生了。

簡單地說,浮動是因為使用了float:left或float:right或兩者都是有了而產生的浮動。

1、背景不能顯示

由於浮動產生,如果對父級設定了(css background背景)css背景顏色或css背景,而父級不能被撐開,所以導致css背景不能顯示。

2、邊框不能撐開

如上圖中,如果父級設定了css邊框屬性(css border),由於子級裡使用了float屬性,產生浮動,父級不能被撐開,導致邊框不能隨內容而被撐開。

3、margin padding設定值不能正確顯示

由於浮動導致父級子級之間設定了css padding、css margin屬性的值不能正確表達。特別是上下邊的padding和margin不能正確顯示。

這裡divcss5為了統一講解浮動解決方法,假設了有三個盒子物件,乙個父級裡包含了兩個子級,子級乙個使用了float:left屬性,另外乙個子級使用float:right屬性。同時設定div css 

border,父級css邊框顏色為紅色,兩個子級邊框顏色為藍色;父級css背景樣式為黃色,兩個子級背景為白色;父級css width寬度為400px,兩個子級css寬度均為180px,兩個子級再設定相同高度100px,父級css height高度暫不設定(通常為實際css布局時候這樣父級都不設定高度,而高度是隨內容增加自適應高度)。

父級css命名為「.divcss5」對應html標籤使用「

」兩個子級css命名分別為「.divcss5-left」「.divcss5-right」

根據以上描述divcss5給出對應css**和html**片段

css**:

.divcss5 

.divcss5-left,.divcss5-right 

.divcss5-left 

.divcss5-right 

對應html源**片段:

<

divclass

="divcss5"

>

<

divclass

="divcss5-left"

>

left浮動

div>

<

divclass

="divcss5-right"

>

right浮動

div>

div>

清除浮動前案例截圖父級需要清除浮動

以下divcss5總結了幾點用於清除浮動的經驗教程

1、對父級設定適合css高度

對父級設定適合高度樣式清除浮動,這裡對「.divcss5」設定一定高度即可,一般設定高度需要能確定內容高度才能設定。這裡我們知道內容高度是100px+上下邊框為2px,這樣具體父級高度為102px

css**:

.divcss5 

.divcss5-left,.divcss5-right 

.divcss5-left 

.divcss5-right 

html**不變。得到截圖

使用height高度清除浮動

小結,使用設定高度樣式,清除浮動產生,前提是物件內容高度要能確定並能計算好。

2、clear:both清除浮動

為了統一樣式,我們新建乙個樣式選擇器css命名為「.clear」,並且對應選擇器樣式為「clear:both」,然後我們在父級「

」結束前加此div引入「class="clear"」樣式。這樣即可清除浮動。

具體css**:

.divcss5 

.divcss5-left,.divcss5-right 

.divcss5-left 

.divcss5-right 

.clear 

html**:

<

divclass

="divcss5"

>

<

divclass

="divcss5-left"

>

left浮動

div>

<

divclass

="divcss5-right"

>

right浮動

div>

<

divclass

="clear"

>

div>

div>

clear清除浮動截圖

clear清除浮動截圖 使用css clear清除浮動

這個css clear清除float產生浮動,可以不用對父級設定高度 也無需技術父級高度,方便適用,但會多加css和html標籤。

3、父級div定義 overflow:hidden

對父級css選擇器加overflow:hidden樣式,可以清除父級內使用float產生浮動。優點是可以很少css**即可解決浮動產生。

overflow:hidden解決css**:

.divcss5 

.divcss5-left,.divcss5-right 

.divcss5-left 

.divcss5-right 

html**不變。

解決清除浮動後截圖

overflow清除float產生浮動截圖 overflow:hidden清除浮動截圖

為什麼加入overflow:hidden即可清除浮動呢?那是因為overflow:hidden屬性相當於是讓父級緊貼內容,這樣即可緊貼其物件內內容(包括使用float的div盒子),從而實現了清除浮動。css overflow:hidden清除浮動方法divcss5推薦使用。

以上三點即是相容各大瀏覽器清除浮動的方法,其它有的瀏覽器不相容有的不相容的方法就沒必要介紹了,大家記住以上三點解決float浮動清除浮動方法。但這裡推薦第三點和第二點解決清除浮動方法。

另外參考《

CSS清除浮動 清除float浮動

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

CSS清除浮動 清除float浮動

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

CSS清除浮動 清除float浮動

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