搜尋
首頁web前端css教學css清除浮動的方法有哪些? css浮動清除的四種方法介紹

css清除浮動是在css佈局中經常看到的,那麼css中該如何清除浮動呢?這篇文章將為大家介紹關於css清除浮動的方法,以及簡單介紹為什麼要使用css浮動。

我們上篇文章css浮動是什麼意思? css為什麼要清除浮動? 中已經說到使用css浮動是因為在css中一些元素是塊級元素,他們會自動啟用新的一行,還有另一種內聯元素也就是行內元素,它們會與之前的內容保持顯示在「一行」;但是有時候我們需要改變這種佈局方式,這就需要利用css浮動來實現。但是當出現「高度塌陷」時就會需要清除浮動。那麼,css清除浮動的方法有哪些呢?

下面我們就來看看css清除浮動的四種方法介紹。

css清除浮動的方法一:

使用帶有clear屬性的空元素

在浮動元素後面使用一個空元素如

,並賦予CSS.clear{clear:both;}屬性即可清理浮動。亦可使用

來進行清理。
.news {
  background-color: gray;
  border: solid 1px black;
  }
.news img {
  float: left;
  }
.news p {
  float: right;
  }
.clear {
  clear: both;
  }
<div class="news">
<img  src="/static/imghwm/default1.png"  data-src="news-pic.jpg"  class="lazy"   / alt="css清除浮動的方法有哪些? css浮動清除的四種方法介紹" >
<p>some text</p>
<div class="clear"></div>
</div>

說明:

優點:簡單,程式碼少,瀏覽器相容性好。

缺點:需要增加大量無語意的html元素,程式碼不夠優雅,後期不容易維護。

css清除浮動的方法二:

使用CSS的overflow屬性

為浮動元素的容器新增overflow: hidden;或overflow:auto;可以清除浮動,另外在IE6 中還需要觸發hasLayout ,例如為父元素設定容器寬高或設定zoom:1。

.news {
  background-color: gray;
  border: solid 1px black;
  overflow: hidden;
  *zoom: 1;
  }
.news img {
  float: left;
  }
.news p {
  float: right;
  }
<div class="news">
<img  src="/static/imghwm/default1.png"  data-src="news-pic.jpg"  class="lazy"   / alt="css清除浮動的方法有哪些? css浮動清除的四種方法介紹" >
<p>some text</p>
</div>

說明:

在加入overflow屬性後,浮動元素又回到了容器層,把容器高度撐起,達到了清理浮動的效果。

優點:不存在結構和語意化問題,程式碼量極少

缺點:內容增多時候容易造成不會自動換行導致內容被隱藏掉,無法顯示需要溢出的元素; 04年POPO發現overflow:hidden會導致中鍵失效,這是我作為一個多標籤瀏覽控所不能接受的。所以還是不要使用.

css清除浮動的方法三:

#使用鄰接元素處理

什麼都不做,為浮動元素後面的元素加入clear屬性。

.news {
  background-color: gray;
  border: solid 1px black;
  }
.news img {
  float: left;
  }
.news p {
  float: right;
  }
.content{
  clear:both;
  }
<div class="news">
<img  src="/static/imghwm/default1.png"  data-src="news-pic.jpg"  class="lazy"   / alt="css清除浮動的方法有哪些? css浮動清除的四種方法介紹" >
<p>some text</p>
<div class="content"></div>
</div>

css清除浮動的方法四:

使用CSS的:after偽元素

結合:after 偽元素(注意這不是偽類,而是偽元素,代表一個元素之後最近的元素)和IEhack ,可以完美兼容當前主流的各大瀏覽器,這裡的IEhack 指的是觸發hasLayout。

在浮動元素的容器中加入一個clearfix的class,然後在這個class上加上一個:after偽元素實作元素末端加上一個看不見的塊元素(Block element)來清理浮動。

.news {
  background-color: gray;
  border: solid 1px black;
  }
.news img {
  float: left;
  }
.news p {
  float: right;
  }
.clearfix:after{
  content: "020"; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;  
  }
.clearfix {
  /* 触发 hasLayout */ 
  zoom: 1; 
  }
<div class="news clearfix">
<img  src="/static/imghwm/default1.png"  data-src="news-pic.jpg"  class="lazy"   / alt="css清除浮動的方法有哪些? css浮動清除的四種方法介紹" >
<p>some text</p>
</div>

說明:透過CSS偽元素在容器的內部元素最後加上了一個看不見的空格"020"或點".",並且賦予clear屬性來清除浮動。要注意的是為了IE6和IE7瀏覽器,要給clearfix這個class增加一條zoom:1;觸發haslayout。

最後:關於上述文章中一些屬性的具體內容可以參考css手冊

相關推薦:

CSS清除浮動常用方法小結_經驗交流

css別忘記清除浮動clear:both_經驗交流

CSS中Float(浮動)相關技巧文章_經驗交流

以上是css清除浮動的方法有哪些? css浮動清除的四種方法介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
構建我們想要的網絡構建我們想要的網絡Apr 11, 2025 am 10:55 AM

在Microsoft Edge團隊中,我們致力於開放網絡並幫助推動創新前進,這就是為什麼我們開始了一項新計劃

了解網絡可訪問性顏色對比度和比率了解網絡可訪問性顏色對比度和比率Apr 11, 2025 am 10:51 AM

當您對網頁設計中的顏色對比投訴時,該怎麼辦?對您來說似乎很好,因為您能夠閱讀

這樣做以改善網站上的圖像加載這樣做以改善網站上的圖像加載Apr 11, 2025 am 10:32 AM

在下面嵌入的視頻中,Jen Simmons解釋瞭如何使用寬度和高度屬性來改善圖像加載。問題是有很多詹克

結識了Skvelte,這是街區上的新框架結識了Skvelte,這是街區上的新框架Apr 11, 2025 am 10:29 AM

在過去的六年中,Vue,Angular和React紮根了前端組件框架的世界。 Google和Facebook有自己的讚助框架,

為什麼JavaScript吃HTML為什麼JavaScript吃HTMLApr 11, 2025 am 10:28 AM

網絡開發總是在變化。最近,尤其是一種趨勢已經變得非常流行,這從根本上違背了關於

控制台命令指南控制台命令指南Apr 11, 2025 am 10:14 AM

多年來,開發人員的調試控制台已在Web瀏覽器中以一種或另一種形式提供。最初是作為錯誤報告的手段

被盜域名的情況被盜域名的情況Apr 11, 2025 am 10:12 AM

早在2011年,該網站的域名CSS-Tricks.com就被盜了。 “劫持域,”他們稱之為。它不僅是這個網站,但大約有12個網站

使用邊緣到邊緣網格的全寬元素使用邊緣到邊緣網格的全寬元素Apr 11, 2025 am 10:09 AM

如果您有一個有限的寬度容器,則說一個集中的文本列,“打破”以使全寬元素涉及欺騙。也許是最好的

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

EditPlus 中文破解版

EditPlus 中文破解版

體積小,語法高亮,不支援程式碼提示功能

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)