關於清除浮動的四種方法


浮動對頁面的影響:

    如果一個父盒子中有一個子盒子,並且父盒子沒有設置高,子盒子在父盒子中進行了浮動,那么將來父盒子的高度為0.由於父盒子的高度為0,

    下面的元素會自動補位,所以這個時候要進行浮動的清除。

關於清除浮動的方式:

 

  方式一:使用overflow屬性來清除浮動

    .ovh{

      overflow:hidden;

     }

    先找到浮動盒子的父元素,再在父元素中添加一個屬性:overflow:hidden,就是清除這個父元素中的子元素浮動對頁面的影響.

    注意:一般情況下也不會使用這種方式,因為overflow:hidden有一個特點,離開了這個元素所在的區域以后會被隱藏(overflow:hidden會將超出的部分隱藏起來).

 

  方式二:使用額外標簽法

    .clear{

      clear:both;

     }

    在浮動的盒子之下再放一個標簽,在這個標簽中使用clear:both,來清除浮動對頁面的影響.

      a.內部標簽:會將這個浮動盒子的父盒子高度重新撐開.

      b.外部標簽:會將這個浮動盒子的影響清除,但是不會撐開父盒子.

    注意:一般情況下不會使用這一種方式來清除浮動。因為這種清除浮動的方式會增加頁面的標簽,造成結構的混亂.

 

  方法三:使用偽元素來清除浮動(after意思:后來,以后)

    .clearfix:after{

      content:"";//設置內容為空

      height:0;//高度為0

      line-height:0;//行高為0

      display:block;//將文本轉為塊級元素

      visibility:hidden;//將元素隱藏

      clear:both//清除浮動

     }

    .clearfix{

      zoom:1;為了兼容IE

    }

  方法四:使用雙偽元素清除浮動

    .clearfix:before,.clearfix:after {

                  content: "";

                  display: block;

                  clear: both;

            }

            .clearfix {

                  zoom: 1;

            }

 

    總結:第一種方法會將超出部分隱藏在某些時候我們想清除浮動並且保留超出部分時做不到,第二種方法會增加許多不必要的標簽,

      所以我們盡量使用第三種方法來清除浮動,為什么不選擇第四種方法呢?因為第四種是第三種的改良版雖然比較簡便,但是不

      嚴謹!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM