BFC详解
创始人
2025-05-28 04:49:51
0

1. 引言

在前端的布局手段中,一直有这么一个知识点,很多前端开发者都知道有它的存在,但是很多人也仅仅是知道它的存在而已,对它的作用也只是将将说得出来,可是却没办法说得非常的清晰。这个知识点,就是BFC。想要了解BFC的规则,前提必须是熟悉前端网页的多种布局手段,例如盒的显示模式display,三种布局手段标准流(normal)浮动流(float)定位流(position)等。你只有熟练掌握了这些布局手段之后,才能很好的理解BFC。今天这篇文章,来大家解析一下BFC,希望对各位新老朋友有所帮助。

2. 定义

BFC(Block formatting context)直译为“块级格式化上下文”。它是一个独立的渲染区域,只有Block-level box参与,它规定了内部的Block-level box如何布局,并且与这个区域外部毫不相干。在官方文档到中,是这么介绍BFC的。

A block formatting context contains everything inside of the element creating it that is not also inside a descendant element that creates a new block formatting context.

强行翻译一下吧,简单来说,这句话的意思就是:一个BFC区域包含创建该上下文元素的所有子元素,但是不包括创建了新的BFC的子元素的内部元素。

3. 触发BFC

并不是任意一个元素都可以被当做BFC,只有当这个元素满足以下任意一个条件的时候,这个元素才会被当做一个BFC。

触发BFC的条件

  • body根元素
  • 设置浮动,不包括none
  • 设置定位,absoulte或者fixed
  • 行内块显示模式,inline-block
  • 设置overflow,即hidden,auto,scroll
  • 表格单元格,table-cell
  • 弹性布局,flex

4. 总结

  • 一个BFC区域只包含其子元素,不包括其子元素的子元素.
  • 并不是所有的元素都能成为一块BFC区域,只有当这个元素满足条件的时候才会成为一块BFC区域
  • 不同的BFC区域之间是相互独立的,互不影响的。利用这个特性我们可以让不同BFC区域之间的布局不产生影响.

相关内容

热门资讯

603839实控人等,被立案调... 8月26日,安正时尚发布公告称,因涉嫌信息披露违法违规,中国证监会于当日对控股股东、实际控制人郑安政...
逆转与血洗:一夜之间,足球世界... 在这个令人热血沸腾的8月26日,足球场上发生了令人难以置信的两场比赛,彻底颠覆了我们对比赛的认知。你...
国内商品期市夜盘收盘,油脂油料... 8月26日,国内商品期市夜盘收盘,多数上涨,油脂油料涨幅居前,CZCE菜粕涨1.97%;能源品全部上...
算力租赁,这门生意正在闷声发财... 订阅 快刀财经 ▲ 做您的私人商学院现在的算力还在"一卡难求",这门生意的量价齐升逻辑,短期内还...
短剧行业大洗牌:90%亏损,头... 俘获观众后,看剧开始迎来“收割”?作者 :唐纳德来源: 快刀财经(ID:kuaidaocaijing...
巨人网络上半年净利21.44亿... 中经记者 李哲 北京报道8月26日,巨人网络(002558.SZ)发布2026年半年度报告。上半年,...
Palo Alto Netwo... 8月26日,Palo Alto Networks首席执行官Nikesh Arora在以250亿美元达...
第二届世界人形机器人运动会落幕... 本文来源:时代周报8月26日,第二届世界人形机器人运动会在北京国家速滑馆“冰丝带”落幕。智元取得金牌...
隔膜龙头恩捷股份上半年净利增长... 锂电隔膜龙头恩捷股份(002812.SZ)最新披露的2026年半年度报告显示,今年上半年,该公司实现...
上半年收入超去年全年,Mini... 8月26日,MiniMax发布了2026年半年度业绩报告。上半年MiniMax总收入约为1.2亿美元...