# 此页面贡献者:阿喵、年轻的小铲
块格式化上下文 (BFC)
BFC
包含创建它的元素内的所有内容。
BFC
对于定位
与闭合浮动
很重要。定位和闭合浮动的样式规则只适用于处于同一 BFC
内的元素。浮动不会影响其它 BFC
中元素的布局,Margin collapsing
也只发生在属于同一BFC内的块级元素之间。
A BFC is created by one of the following:
根元素,或其它包含它的元素
块元素 (
overflow
值不为visible
)内联块元素 (
display
值为inline-block
)浮动元素 (
float
值不为none
)绝对定位元素 (
position
值为absolute
或fixed
)弹性元素 ( 其父级元素设置了
display
值为flex
或inline-flex
)网格元素 ( 其父级元素设置了
display
值为grid
或inline-grid
)多列容器 (元素的
column-count
或column-width
值不为auto
, 包括column-count: 1
的元素)表格单元格元素 (HTML表格单元格,或者
display
值为table-cell
)表格标题元素 (HTML表格标题,或者
display
值为table-caption
)匿名表格元素 (
display
值为table
|table-row
|table-row-group
|table-header-group
|table-footer-group
(分别是HTML tables | table rows, table bodies, table headers and table footers的默认属性),或inline-table
)display
值为flow-root
contain
值为layout
|content
|strict
column-span
值为all
(即便具有column-span: all
的元素没有被包裹在一个多列容器中,也始终会创建一个新的BFC)