html清除浮動(dòng)

css浮動(dòng)可以實(shí)現(xiàn)很多功能,比如多欄布局,多元素的內(nèi)聯(lián)排列等等,在同時(shí)也帶來了一些問題,浮動(dòng)后就脫離了原來的文檔流,進(jìn)而就會(huì)造成父元素塌陷。

目前解決浮動(dòng)造成的這個(gè)問題主要有一下幾種方案:

1. clear:both清除浮動(dòng)

   <div class="container">
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
    <div style="clear:both"></div>
</div>

    .container {
        border: 1px solid red;
    }

    .box {
        height: 100px;
        width: 100px;
        margin: 20px;
        background: green;
        float: left;
    }

2. 塊狀格式化上下文清除浮動(dòng)

<b>什么是格式化上下文</b>
* 可以包含浮動(dòng)元素
* 不被浮動(dòng)元素覆蓋
* 阻止父子元素的margin折疊

<b>如何創(chuàng)建格式化上下文</b>
* 根元素
* 浮動(dòng)元素(float不是none)
* 絕對(duì)定位元素(position為fixed或absolute)
* display取值為inline-block,table-cell,table-caption,flex,inline-flex之一
* overflow不是visible的元

<div class="container">
        <div class="box"></div>
        <div class="box"></div>
        <div class="box"></div>
    </div>
        .container {
            border: 1px solid red;
            /*display:table;*/
            float:left;
            /*overflow: hidden;*/
            /*position: absolute;*/
        }

        .box {
            height: 100px;
            width: 100px;
            margin: 20px;
            background: green;
            float: left;
        }

3. 偽類清楚浮動(dòng)

    <div class="clearfix">
        <div class="box"></div>
        <div class="box"></div>
        <div class="box"></div>
    </div>
        .clearfix:before,
        .clearfix:after {
            display: table;
            content: " ";
        }

        .clearfix:after {
            clear: both;
        }

        .clearfix {
            *zoom: 1;
        }

總結(jié)

常用的以上三種清楚浮動(dòng)的辦法,推薦使用第三種,兼容性比較好,并且沒有添加格外的一些類,可移植性比較好

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 14,156評(píng)論 1 92
  • 在樣式中增加如下樣式 before的樣式是清除margin-top塌陷要用的,after的樣式是清除浮動(dòng)用的(防止...
    Oo晨晨oO閱讀 861評(píng)論 0 0
  • 浮動(dòng),從誕生那天起,它就是個(gè)特別的屬性——既為網(wǎng)頁布局帶來新的方法,卻又隨之產(chǎn)生一系列的問題。當(dāng)然,隨著時(shí)間的推移...
    郝特么冷閱讀 908評(píng)論 0 6
  • 這篇文章極好,以至于讓我受益良多,就一字沒有改動(dòng)的轉(zhuǎn)發(fā)過來一絲冰涼老師的文章 需要注意的是,display:tab...
    新晉小牛牛閱讀 1,129評(píng)論 0 2
  • 1.安裝Homebrew 因?yàn)榘惭bnginx+rtmp需要Homebrew。使用命令man brew查看是否裝有H...
    xiari1991閱讀 380評(píng)論 0 0

友情鏈接更多精彩內(nèi)容