BFC到底是什么

页面上的所有内容都是格式设置上下文的一部分,或者是定义为以特定方式布局内容的区域的一部分。块格式设置上下文 (BFC) 将根据块布局规则布置子元素,弹性格式设置上下文将其子元素作为弹性项进行布局,依此类推。每个格式设置上下文都有关于布局在该上下文中的行为方式的特定规则。

在哪一些情况下会创建新的BFC

在以下情况下会创建新的 BFC:

BFC有什么用处

1.能解决外边距的问题

外边距折叠(Margin collapsing)会发生在属于同一BFC的块级元素之间

解决办法

给父元素添加overflow:hidden;

html

 <div class="box1">设置margin-bottom:10px</div>
    <div class="box2">设置margin-top:10px</div>

css:

  div {
            color: aliceblue;
            /* font: 14px/80px '宋体'; */
        }

        .box1 {
            width: 100px;
            height: 100px;
            background-color: brown;
            margin-bottom: 10px;
        }

        .box2 {
            width: 100px;
            height: 100px;
            background-color: blueviolet;
            margin-top: 10px;
        }

两个盒子的外边距发生了重叠这时我们就可以让这两个div分属于不同的BFC,或者只要把其中一个div放到BFC中就可以。原因是:BFC就是页面上的一个隔离的独立容器,容器里面的元素不会对外边产生影响。

/*html*/
 <div class="big">
        <div class="box1">设置margin-bottom:10px</div>
    </div>

    <div class="box2">设置margin-top:10px</div>


/*  css*/
   div {
            color: aliceblue;
            /* font: 14px/80px '宋体'; */
        }

        .box1 {
            width: 100px;
            height: 100px;
            background-color: brown;
            margin-bottom: 10px;
        }

        .box2 {
            width: 100px;
            height: 100px;
            background-color: blueviolet;
            margin-top: 10px;
        }

        .big {
            overflow: hidden;
        }

 

 参考网页:MDN文档

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值