首頁  >  文章  >  web前端  >  清除浮動的方法有哪些

清除浮動的方法有哪些

清浅
清浅原創
2018-12-13 15:21:5359947瀏覽

清除浮動的方法有clearboth的方法、設定clearfix的方法、overflow的方法以及給父元素設定雙偽元素的方法

在我們寫程式碼的時候,有時因為使用了float浮動元素而導致頁面中某些元素無法正確的顯示,接下來在文章中將為大家詳細介紹幾種清除浮動的方法,具有一定的參考價值,希望對大家有所幫助。

【推薦課程:CSS課程

清除浮動的方法有哪些

浮動導致的後果:

(1)由於浮動元素脫離了文檔流,所以父元素的高度無法被撐開,影響了與父元素同級的元素
(2)與浮動元素同級的非浮動元素會跟隨其後,因為浮動元素脫離文檔流不佔據原來的位置
(3)如果該浮動元素不是第一個浮動元素,則該元素之前的元素也需要浮動,否則容易影響頁面的結構顯示

例:在一個div中設定三個div,讓三個div的來撐開父元素

<style>
    .box{border:1px solid #ccc;background:pink;}
    .red{width:100px;height:100px;background: red;}
    .green{width:100px;height:100px;background:green;}
    .blue{width:100px;height:100px;background: blue;}
</style>
<body>
<div class="box">
    <div class="red"></div>
    <div class="green"></div>
    <div class="blue"></div>
</div>

效果圖:

清除浮動的方法有哪些

加上了float:left之後,父元素無法被撐開

清除浮動的方法有哪些

#清除浮動的方法

(1)使用clear:both清除浮動

在程式碼中在放一個空的div標籤,然後給這個標籤設定clear:both來清除浮動對頁面的影響。它的優點是簡單,方便相容性好,但是一般情況下不建議使用該方法,因為會造成結構混亂,不利於後期維護

<div style="clear: both"></div>

(2)利用偽元素clearfix來清除浮動

為父級元素添加了一個:after偽元素,透過清除偽元素的浮動,達到撐起父元素高度的目的

.clearfix:after{
    content:"";
    display:block;
    visibility:hidden;
    clear:both;
    }

(3) overflow方法的使用

當為父元素設定了overflow樣式,不管是overflow:hidden或overflow:auto都可以清除浮動只要它的值不為visible就可以了,它的本質就是建構了一個BFC,使得達到撐起父元素高度的效果

.box{border:1px solid #ccc;background:#eff2f4;overflow: auto}

(4)雙偽元素方法的使用

透過給父元素設定雙偽元素來達到清除浮動的效果

 .clearfix:before,.clearfix:after {
     content: "";
     display: block;
     clear: both;
}

總結:以上就是本篇文章的全部內容了,希望透過這篇文章能夠讓大家對清除浮動的方法有所了解

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

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