Stacking Context
堆叠上下文
堆叠上下文是 CSS 图层的局部分组。元素会先在自己的组内排序,再把整组和其他组比较前后位置。
另一个例子
一个对话框放在使用了 transform 的卡片里,旁边另有页头。就算设置 z-index: 9999,对话框也跳不出卡片的堆叠上下文;z-index 数字只会在所属上下文内比较。
主要部分
- 01context root
- 02内部绘制顺序
- 03整体 sibling 顺序
什么时候用
要解释某个重叠的子元素,为什么无法跑到另一个图层组上方时,可以使用这个词。
什么时候不要用
不要把整个页面当成同一套 z-index 刻度,也不要在找出堆叠上下文根节点前一直加大数字。
代码里的名称
context root → local paint order → atomic sibling 上线前要检查
检查内容先后顺序、共用设计变量、组件一致性、对比度、缩放,以及页面能否随屏幕大小调整。验证每个主题、语言与状态;有动态效果时,也要提供同样完整的减少动态效果版本。
预期结果:定义或使用 堆叠上下文 (Stacking Context),做出清楚、一致又好用的视觉体验。 用户场景:一个对话框放在使用了 transform 的卡片里,旁边另有页头。就算设置 z-index: 9999,对话框也跳不出卡片的堆叠上下文;z-index 数字只会在所属上下文内比较。 要运用的设计概念:堆叠上下文 (Stacking Context)。 适用理由:要解释某个重叠的子元素,为什么无法跑到另一个图层组上方时,可以使用这个词。 不应使用的情况:不要把整个页面当成同一套 z-index 刻度,也不要在找出堆叠上下文根节点前一直加大数字。 设计要求:定义内容先后顺序、可复用的设计变量(Token)与组件。说明页面如何随屏幕大小和状态改变。分清必要的设计方向与纯装饰。 包容性与韧性:检查对比度、缩放、多语言、主题切换与减少动态效果。不能只靠颜色或特效表达含义。 验收标准:在手机、桌面、缩放、各种主题与所有支持语言中仍清晰可读。每个交互状态都一致且容易理解。 证据与限制(证据边界):正式文档仍可能是草案、候选版或最终版。请查看文档状态,也要确认浏览器或平台是否支持。 待确认:品牌限制、内容多少、支持的主题与语言、目标设备,以及现有设计系统规则。
检查这份需求
请 AI 编程助手检查当前如何使用 堆叠上下文 (Stacking Context)。 定义:堆叠上下文是 CSS 图层的局部分组。元素会先在自己的组内排序,再把整组和其他组比较前后位置。 生产环境检查:检查内容先后顺序、共用设计变量、组件一致性、对比度、缩放,以及页面能否随屏幕大小调整。验证每个主题、语言与状态;有动态效果时,也要提供同样完整的减少动态效果版本。 修改程序前,先列出看到的证据、缺口、严重程度,以及最小且安全的修正。