Block Formatting Context
块级格式化上下文
块级格式化上下文(BFC)是一个独立处理块级布局的范围。它能把浮动元素包在里面,也能阻止部分外边距和浮动元素影响外部内容。
另一个例子
旧文章卡片中的浮动缩略图会让背景塌掉,文字还会绕到旁边的浮动元素。加入 `display: flow-root` 建立 BFC 后,缩略图会留在卡片内,原本需要的子元素外边距也会保留。它不像 `overflow: hidden`,不会裁掉焦点框。
主要部分
- 01BFC 根元素
- 02被包含的浮动元素
- 03隔离的块流
什么时候用
组件需要包住浮动元素,或把块级布局的影响留在内部,又不能裁剪内容时,可以使用 `flow-root`。
什么时候不要用
不要习惯性用 `overflow: hidden` 清除浮动。它可能裁掉内容、阴影、弹出层或焦点标记。
代码里的名称
display: flow-root (or another BFC-establishing condition) 上线前要检查
检查内容先后顺序、共用设计变量、组件一致性、对比度、缩放,以及页面能否随屏幕大小调整。验证每个主题、语言与状态;有动态效果时,也要提供同样完整的减少动态效果版本。
预期结果:定义或使用 块级格式化上下文 (Block Formatting Context),做出清楚、一致又好用的视觉体验。 用户场景:旧文章卡片中的浮动缩略图会让背景塌掉,文字还会绕到旁边的浮动元素。加入 `display: flow-root` 建立 BFC 后,缩略图会留在卡片内,原本需要的子元素外边距也会保留。它不像 `overflow: hidden`,不会裁掉焦点框。 要运用的设计概念:块级格式化上下文 (Block Formatting Context)。 适用理由:组件需要包住浮动元素,或把块级布局的影响留在内部,又不能裁剪内容时,可以使用 `flow-root`。 不应使用的情况:不要习惯性用 `overflow: hidden` 清除浮动。它可能裁掉内容、阴影、弹出层或焦点标记。 设计要求:定义内容先后顺序、可复用的设计变量(Token)与组件。说明页面如何随屏幕大小和状态改变。分清必要的设计方向与纯装饰。 包容性与韧性:检查对比度、缩放、多语言、主题切换与减少动态效果。不能只靠颜色或特效表达含义。 验收标准:在手机、桌面、缩放、各种主题与所有支持语言中仍清晰可读。每个交互状态都一致且容易理解。 证据与限制(证据边界):正式文档仍可能是草案、候选版或最终版。请查看文档状态,也要确认浏览器或平台是否支持。 待确认:品牌限制、内容多少、支持的主题与语言、目标设备,以及现有设计系统规则。
检查这份需求
请 AI 编程助手检查当前如何使用 块级格式化上下文 (Block Formatting Context)。 定义:块级格式化上下文(BFC)是一个独立处理块级布局的范围。它能把浮动元素包在里面,也能阻止部分外边距和浮动元素影响外部内容。 生产环境检查:检查内容先后顺序、共用设计变量、组件一致性、对比度、缩放,以及页面能否随屏幕大小调整。验证每个主题、语言与状态;有动态效果时,也要提供同样完整的减少动态效果版本。 修改程序前,先列出看到的证据、缺口、严重程度,以及最小且安全的修正。