首頁 >web前端 >css教學 >清除css浮動的方法小結

清除css浮動的方法小結

小云云
小云云原創
2018-01-20 09:25:091332瀏覽

本文主要介紹了清除css浮動的三種方法小結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧,希望能幫助大家。

一,我們為什麼要浮動

為什麼浮動,為什麼要清除浮動,以及清除浮動的方法。在網頁版面的時候有時需要元素並排顯示,如果不選擇浮動,那麼那些塊狀元素就會一行一行顯示,佔用空間不說,使用者體驗也是極為不好的。

以下是沒有浮動的元素代碼


<p class=“box”>
        <p class=“box01”></p>
        <p class=“box02”></p>
    </p>
 .box{
    background: #000;
}
.box01{
    width: 100px;
    height: 100px;
    background: red;
}
.box02{
    width: 100px;
    height: 100px;
    background: yellow;
}

1-1圖是沒有浮動的元素,1-2圖是外層容器的寬高,下文會說到此次用意

#在我們為元素加上浮動之後,佈局就變了,兩個p並排顯示了,如圖1-3,是不是很神奇,哈哈

但是大家有沒有發現最外一層的p背景色沒了,高度也變成了0,因為元素脫離的文檔流,在最外層的p中不佔空間,這時我們就需要清除浮動,清除由子元素浮動給父元素帶來坍塌的影響。 (注意這裡清除浮動不是指先前給子元素設定的浮動,二是清除浮動對父元素帶來的影響,希望大家能明白)。

二清除浮動有三種方法:

第一種:clear:both;

在父元素的裡面加入一個類別clear的p(跟box01,box02同級),然後再為這個類別加入屬性值clear:both;便可以清除浮動,以下是程式碼以及清除浮動之後的效果如圖1-3


<p class=“box”>
        <p class=“box01”></p>
        <p class=“box02”></p>
        <p class=“clear”></p>
    </p>
   .box{
    background: #000;
}
.clear{
    clear: both;
}
.box01{
    width: 100px;
    height: 100px;
    background: red;
    float: left;
}
.box02{
    width: 100px;
    height: 100px;
    background: yellow;
    float: left;
}

可以看到背景色出來了,而父元素的高正是100px,這是子元素撐開的。

第二種:overflow:hidden;

在父元素加入overflow: hidden;也可以清除浮動,如下css程式碼,但不提倡使用這個方法,overflow: hidden;還有一個意思就是隱藏超出的部分,處理不好還是會為頁面帶來麻煩。


.box{
        background: #000;
        overflow: hidden;
    }

第三種:clearfix;

如果你的頁面使用bootstrap框架,引入css文件,為父元素添加clearfix可以清除浮動,這也是平時工作中最常用也是最受程式設計師喜歡的一種方法,只需添加一個類別便可,而clear:both則是向頁面多加了一個p。所以小編向大家推薦第三種方法。

如果你的頁面使用的不是bootstrap框架,那麼也有源碼供初學者參考,向clearfix添加偽類實現清除浮動。


<p class=“box clearfix”>
        <p class=“box01”></p>
        <p class=“box02”></p>
        <p class=“clear”></p>
    </p>
 .box{
    background: #000;
}
.clearfix:before,.clearfix:after{
    content: ”;
    display: table;//可以很好的解决浏览器兼容问题
}
.clearfix:after{
    clear: both;
}
.box01{
    width: 100px;
    height: 100px;
    background: red;
    float: left;
}
.box02{
    width: 100px;
    height: 100px;
    background: yellow;
    float: left;
}

大家學會了嗎?有需要的朋友趕緊收藏起來吧。

相關推薦:

關於css浮動元素的居中

有關CSS浮動和定位定義和用法介紹

CSS浮動與浮動清除(BFC)簡單教學

#

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

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