布局与 CSS 深入了解 A2 · 正式技术规范 平台: 网页

CSS Nesting

CSS 嵌套规则

CSS 嵌套规则是把一条样式规则写在另一条里面的原生语法。浏览器仍会按 CSS 规范解析选择器和它们的优先级。

看看怎样运作
也有人这样说 CSS Nesting原生嵌套嵌套样式规则

看看怎样运作

原创情境示例CSS 嵌套规则

另一个例子

按钮组件把 `&:hover`、`&:focus-visible` 和 `@media (forced-colors: active)` 写在 `.button` 里,让六条状态规则靠近基础规则。代码审查则拒绝三层后代选择器,因为那会让按钮绑死在某一种页面结构。

主要部分

  1. 01父样式规则
  2. 02嵌套选择器或 at-rule
  3. 03解析后选择器

什么时候用

同一组件的状态、变体和条件 at-rule,可以用一到两层的浅层嵌套整理。

什么时候不要用

避免很深的后代链,以及对特定 DOM 结构的隐藏依赖。原生嵌套的语法和优先级也不一定与 CSS 预处理器相同。

代码里的名称

nested style rules with &, relative selectors, and nested group rules

上线前要检查

检查内容先后顺序、共用设计变量、组件一致性、对比度、缩放,以及页面能否随屏幕大小调整。验证每个主题、语言与状态;有动态效果时,也要提供同样完整的减少动态效果版本。

可以直接复制的需求

预期结果:定义或使用 CSS 嵌套规则 (CSS Nesting),做出清楚、一致又好用的视觉体验。 用户场景:按钮组件把 `&:hover`、`&:focus-visible` 和 `@media (forced-colors: active)` 写在 `.button` 里,让六条状态规则靠近基础规则。代码审查则拒绝三层后代选择器,因为那会让按钮绑死在某一种页面结构。 要运用的设计概念:CSS 嵌套规则 (CSS Nesting)。 适用理由:同一组件的状态、变体和条件 at-rule,可以用一到两层的浅层嵌套整理。 不应使用的情况:避免很深的后代链,以及对特定 DOM 结构的隐藏依赖。原生嵌套的语法和优先级也不一定与 CSS 预处理器相同。 设计要求:定义内容先后顺序、可复用的设计变量(Token)与组件。说明页面如何随屏幕大小和状态改变。分清必要的设计方向与纯装饰。 包容性与韧性:检查对比度、缩放、多语言、主题切换与减少动态效果。不能只靠颜色或特效表达含义。 验收标准:在手机、桌面、缩放、各种主题与所有支持语言中仍清晰可读。每个交互状态都一致且容易理解。 证据与限制(证据边界):正式文档仍可能是草案、候选版或最终版。请查看文档状态,也要确认浏览器或平台是否支持。 待确认:品牌限制、内容多少、支持的主题与语言、目标设备,以及现有设计系统规则。

检查这份需求

请 AI 编程助手检查当前如何使用 CSS 嵌套规则 (CSS Nesting)。 定义:CSS 嵌套规则是把一条样式规则写在另一条里面的原生语法。浏览器仍会按 CSS 规范解析选择器和它们的优先级。 生产环境检查:检查内容先后顺序、共用设计变量、组件一致性、对比度、缩放,以及页面能否随屏幕大小调整。验证每个主题、语言与状态;有动态效果时,也要提供同样完整的减少动态效果版本。 修改程序前,先列出看到的证据、缺口、严重程度,以及最小且安全的修正。

A2
这个术语有多正式?

正式技术规范

一份已发布、有版本的正式技术规范,在列出的范围内定义这个术语。

正式文档仍可能是草案、候选版或最终版。请查看文档状态,也要确认浏览器或平台是否支持。

适用范围
只包含来源有说明的内容:正式名称、定义、语义、实现
文档状态
草案
核验日期
2026-07-30

证据来源与适用范围

正式来源 + 术语参考资料 · W3C CSS Working Group · 草案 CSS Nesting Module Level 1 — Nesting style rules Nesting style rules 适用范围: 正式名称、定义、语义、实现 本页用途: 直接术语参考 来源涵盖内容: 正式名称, 定义, 语义, 实现 正式来源 · W3C CSS Working Group · 草案 CSS Nesting Module Level 1 适用范围: 正式名称、定义、语义、实现 本页用途: 只支持写明的范围 来源涵盖内容: 正式名称, 定义, 语义, 实现

自行复制

浏览器无法自动复制。请选择下方文字,再自行复制。