欢迎光临
我们一直在努力

css中清除浮动的方法是什么

这篇文章将为大家详细讲解有关css中清除浮动的方法是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

  浮动导致的后果:

  (1)由于浮动元素脱离了文档流,所以父元素的高度无法被撑开,影响了与父元素同级的元素

  (2)与浮动元素同级的非浮动元素会跟随其后,因为浮动元素脱离文档流不占据原来的位置

  (3)如果该浮动元素不是第一个浮动元素,则该元素之前的元素也需要浮动,否则容易影响页面的结构显示

  例:在一个div中设置三个div,让三个div的来撑开父元素

  <style>

  .box{border:1pxsolid#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>

  <divclass="box">

  <divclass="red"></div>

  <divclass="green"></div>

  <divclass="blue"></div>

  </div>

  效果图:

  加了float:left之后,父元素无法被撑开

  清除浮动的方法

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

  在代码中在放一个空的div标签,然后给这个标签设置clear:both来清除浮动对页面的影响。它的优点是简单,方便兼容性好,但是一般情况下不建议使用该方法,因为会造成结构混乱,不利于后期维护

  <divstyle="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:1pxsolid#ccc;background:#eff2f4;overflow:auto}

  (4)双伪元素方法的使用

  通过给父元素设置双伪元素来达到清除浮动的效果

  .clearfix:before,.clearfix:after{

  content:"";

  display:block;

  clear:both;

  }

关于“css中清除浮动的方法是什么”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。