关于清除浮动的四种方法

浮动对页面的影响:spa

    若是一个父盒子中有一个子盒子,而且父盒子没有设置高,子盒子在父盒子中进行了浮动,那么未来父盒子的高度为0.因为父盒子的高度为0,it

    下面的元素会自动补位,因此这个时候要进行浮动的清除。方法

关于清除浮动的方式:总结

 

  方式一:使用overflow属性来清除浮动伪元素

    .ovh{兼容

      overflow:hidden;di

     }清除浮动

    先找到浮动盒子的父元素,再在父元素中添加一个属性:overflow:hidden,就是清除这个父元素中的子元素浮动对页面的影响.vi

    注意:通常状况下也不会使用这种方式,由于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;

            }

 

    总结:第一种方法会将超出部分隐藏在某些时候咱们想清除浮动而且保留超出部分时作不到,第二种方法会增长许多没必要要的标签,

      因此咱们尽可能使用第三种方法来清除浮动,为何不选择第四种方法呢?由于第四种是第三种的改良版虽然比较简便,可是不

      严谨!

相关文章
相关标签/搜索