CSS清除浮動(dòng)有幾種方法?
問題描述
CSS清除浮動(dòng)有幾種方法?
問題解答
回答1:CSS清除浮動(dòng)有幾種方法?-PHP中文網(wǎng)問答-CSS清除浮動(dòng)有幾種方法?-PHP中文網(wǎng)問答
圍觀一下哦,學(xué)習(xí)一下。
回答2:方法一:使用帶clear屬性的空元素
在浮動(dòng)元素后使用一個(gè)空元素如<p class="clear"></p>,并在CSS中賦予.clear{clear:both;}屬性即可清理浮動(dòng)。亦可使用<br class="clear" />或<hr class="clear" />來進(jìn)行清理。
優(yōu)點(diǎn):簡(jiǎn)單,代碼少,瀏覽器兼容性好。缺點(diǎn):需要添加大量無(wú)語(yǔ)義的html元素,代碼不夠優(yōu)雅,后期不容易維護(hù)。
方法二:使用CSS的overflow屬性
給浮動(dòng)元素的容器添加overflow:hidden;或overflow:auto;可以清除浮動(dòng),另外在 IE6 中還需要觸發(fā) hasLayout ,例如為父元素設(shè)置容器寬高或設(shè)置 zoom:1。在添加overflow屬性后,浮動(dòng)元素又回到了容器層,把容器高度撐起,達(dá)到了清理浮動(dòng)的效果。
方法三:給浮動(dòng)的元素的容器添加浮動(dòng)
給浮動(dòng)元素的容器也添加上浮動(dòng)屬性即可清除內(nèi)部浮動(dòng),但是這樣會(huì)使其整體浮動(dòng),影響布局,不推薦使用。
方法四:使用鄰接元素處理
什么都不做,給浮動(dòng)元素后面的元素添加clear屬性。
方法五:使用CSS的:after偽元素
結(jié)合 :after 偽元素(注意這不是偽類,而是偽元素,代表一個(gè)元素之后最近的元素)和 IEhack ,可以完美兼容當(dāng)前主流的各大瀏覽器,這里的 IEhack 指的是觸發(fā) hasLayout。給浮動(dòng)元素的容器添加一個(gè)clearfix的class,然后給這個(gè)class添加一個(gè):after偽元素實(shí)現(xiàn)元素末尾添加一個(gè)看不見的塊元素(Block element)清理浮動(dòng)。
相關(guān)文章:
1. 如何解決docker宿主機(jī)無(wú)法訪問容器中的服務(wù)?2. docker 下面創(chuàng)建的IMAGE 他們的 ID 一樣?這個(gè)是怎么回事????3. mongodb - Mongo java驅(qū)動(dòng)中,有沒有封裝好的函數(shù),可以直接取到文檔中的某個(gè)具體的值,而不是一個(gè)文檔?或者有沒有方法實(shí)現(xiàn)??4. 需要一個(gè)Java映射/表,其中多個(gè)鍵指向一個(gè)值。價(jià)值通常會(huì)改變5. javascript - JS事件委托問題6. javascript - 關(guān)于jquery的remove()方法7. JavaScript中怎么理解=、==和===8. java - Spring事務(wù)回滾問題9. javascript - vue.js如何遞歸渲染組件.10. 如何修改vim插件vimwiki中Vimwiki2HTML的一些細(xì)節(jié)
