对css BFC的理解

简介

  BFC 的全称是Block Formatting Contextormatting Context,即使块级格式化内容,这么说可能难以理解,你可以理解为它是一个块级容器(div),在这个容器内部的元素即便是闹翻天了,也不会对这个容器的元素布局上造成任何影响!

作用

  BFC是页面上的一个隔离的容器,在BFC内的元素不会影响到BFC外的元素,反之亦然

触发方式

  浮动 float:left | right

  display:inline-blocktable-celltable-captiontableinline-tableflexinline-flexgridinline-grid

  overflow:不是 visible

  position:fixed | absolute

具体作用例子

  BFC容器不会被float元素覆盖,而属于正常流元素会被floast元素挤占

   一个块级元素在不设置height,且内部只有一个float元素的时候,会出现塌陷的情况,而BFC会正常计算float元素的高度

  边距穿透

    html代码

 <div class="box1">
        <div class="find"></div>
    </div>
    <div class="box2"></div>

    样式

* {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    flex-direction: column;
}
.box1{
    width: 100px;
    background: red;
}
.find{
    width: 90px;
    height: 90px;
    background: sienna;
    margin-bottom: 50px;
}
.box2{
    width: 100px;
    height: 100px;
    background: seagreen;
}

    结果

           

  

 

 

 

  

posted @ 2020-02-18 15:07  眼里有激光  阅读(118)  评论(0编辑  收藏  举报