BFC理解和应用

文章介绍了BFC(BlockFormattingContext)的概念,它是CSS布局中一个重要的概念,用于处理元素的渲染问题。当元素满足特定条件如浮动、绝对定位或设置overflow时,会形成BFC。BFC可以防止高度塌陷,解决margin重叠和浮动元素覆盖标准流元素的问题。文章给出了清除浮动的一个方法,即使用`:after`伪元素创建BFC,以此解决高度塌陷问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

现象:有些同事在工作的过程中遇到高度塌陷、margin重叠、标准元素被浮动元素覆盖的情况,有时候通过百度的方法是解决了,但是没有理解其原因是什么。这就引出了我们的主角BFC。

BFC: Block format content 即块级格式化上下文 ,它是一块独立的渲染区域,内部元素的渲染不会影响边界以外的元素。

形成BFC的常见条件:

1、float不是none即浮动布局

2、position是absolute或者fixed

3、overflow 不是visible即设置了滚动

4、display是flex 、inline-block等

现象:

1、子元素把父元素顶到造成高度塌陷

2、所有毗邻的两个或者多个盒元素的margin将会合并为一个margin共享

3、浮动元素把标准流元素覆盖

针对一个场景介绍一下bfc的应用:

高度塌陷:

什么是高度塌陷,在其子元素中设置了浮动的效果(子元素变成了一个独立的渲染区域即BFC),而浮动元素脱离了标准的文档流,导致当前的元素没有被撑起来,这种现象就是高度塌陷。

解决方法:

清除浮动,其实这个也有很多的方法,我们这里只写推荐的一种

用伪元素::after清除浮动

.cleatfix:after {

   content:"";

   display:table;

   clear:both;

其他的问题我们也都可以通过形成bfc来解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值