BFC(Block Formatting Context)块级格式化环境

BFC(Block Formatting Context)块级格式化环境

BFC是一个CSS中的一个隐含的属性,可以作为一个元素开启BFC。
开启BFC的属性会形成一个独立的布局区域。

开启BFC后的特点:
1、开启BFC的元素不会被浮动元素覆盖。
2、开启BFC的子元素和父元素不会产生外边距重叠。
3、开启BFC的元素可以包含浮动的子元素。

创建BFC的方法
1、float的值不是none;
2、position的值不是static或者relative;
3、display的值是inline-block、table-cell、flex、table-caption或者Inline-flex;
4、overflow的值不是visible;

BFC的作用:
1.利用BFC避免margin重叠
属于同一个BFC的垂直相邻的两个盒子会发生margin重叠,我们可以设置两个不同的BFC,也就是我们可以把第二个P用div包起来,然后激活它成为一个BFC。

2、自适应两栏布局
left盒子添加浮动后,会压在right盒子上。
我们给right盒子添加overflow:hidden;属性 让right触发BFC属性使其成为一个独立的渲染区域。 此时会形成一个自适应两栏布局。

3、消除外边距重叠
在父子关系的盒子,给子盒子添加margin后会产生外边距重叠,父子盒子都会移动。
此时给父盒子添加overflow:hidden;属性激活BFC可以消除外边距重叠。

4、清除浮动
Clear 作用:清除浮动元素对当前元素产生的影响。
给当前元素添加:clear:both;

5、清除浮动(消除高度塌陷)
①当我们不给父节点设置高度,子节点设置浮动的时候,会发生高度塌陷,这个时候我们就要清除浮动。
给父节点激活BFC。(overflow:hidden;)

②after伪类解决高度塌陷
给父级盒子添加代码

 .box::after {
            content: '';
            display: block;
            clear: both;
        }

③clearfix同时解决外边距重叠和高度塌陷问题。(给父级盒子添加)

.clearfix::before,
        .clearfix::after {
            content: '';
            display: block;
            clear: both;
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值