清除浮动

3.4清除浮动总结

为什么需要清除浮动?

1、父级没有高度
2、子盒子浮动了
3、影响下面布局了

清除浮动的方式 优点 缺点
额外标签法(隔墙法) 通俗易懂,书写方便 添加许多无意义的标签,结构化较差
父级overflow:hidden; 书写简单 溢出隐藏
父级after伪元素 结构语义化正确 由于IE6-7不支持:after,兼容性问题
父级双伪元素 结构语义化正确 由于IE6-7不支持:after,兼容性问题
  • 隔墙法
    在最后一个浮动后面添加盒子并添加clear: both;
  • 父级overflow:hidden;
    给浮动元素的父盒子添加overflow:hidden
  • 父级after伪元素
    添加css代码并给父级添加class名clearfix
    .clearfix::after {
      content: "";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden;
    }

    .clearfix { /*IE6,7专用*/
      *zoom: 1;
    }
  • 父级双伪元素
    添加css代码并给父级添加class名clearfix
    .clearfix::before, .clearfix::after {
      content: "";
      display: table;
    }

    .clearfix:after {
      clear: both;
    }

    .clearfix { /*IE6,7专用*/
      *zoom: 1;
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 2. 清除浮动 2.1 为什么要清除浮动 因为父级盒子很多情况下,不方便给高度,但是子盒子浮动就不占有位置,最后父...
    王玉伟的伟阅读 303评论 0 0
  • 清除浮动的方法 在CSS中,clear属性用于清除浮动,在这里,我们先记住清除浮动的方法,具体的原理,等我们学完c...
    阿富汗要长大阅读 334评论 0 0
  • 1、为什么使用浮动 为了解决几个块级元素并排显示问题,虽然可以使用定义块级元素的display为inline-bl...
    游_7f5c阅读 127评论 0 0
  • 首先来看个栗子:css代码: <!DOCTYPE html> .main {width:300px;he...
    恬雅过客阅读 250评论 0 0
  • 前言 摘要: 浮动的元素可以向左或向右移动,直到它的外边缘碰到父容器或另一个浮动元素为止。由于浮动元素不在文档的普...
    zouyang0921阅读 417评论 0 2