1. 介绍
当第一个CSS规范发布时, 所有的CSS都包含在定义CSS第一级的一个文档中。 CSS第2级也是由一个多章节的文档定义的。 然而,对于超越第2级的CSS, CSS工作组选择采用模块化的方法, 每个模块定义CSS的一部分, 而不是定义一个单一的整体规范。 这将规范分解为更易管理的部分, 并允许对CSS进行更快速的增量改进。
由于不同的CSS模块具有不同的稳定性级别, CSS工作组选择发布这个概要文件, 以定义截至2023年层叠样式表的当前范围和状态。
1.1. 什么是CSS?
- 层叠样式表(CSS)
- CSS 是一种用于编写样式表的语言, 旨在描述结构化文档(如HTML和XML) 在各种媒体上的呈现。 CSS 用于描述源文档的表现, 通常不会更改其文档语言所表达的底层语义。
- 样式表
- 一组指定文档表现的规则。 样式表由作者编写, 由用户代理解释, 以将文档呈现给用户。
- 源文档
- 一个或多个样式表应用的文档。 源文档的结构和语义使用文档语言(例如HTML、XHTML或SVG)进行编码。
- 作者
- 作者是编写文档和相关样式表的人。 创作工具是生成样式表的用户代理。
- 用户
- 用户是与用户代理交互以查看、收听或以其他方式使用文档的人。
- 用户代理(UA)
- 用户代理是代表用户 解释文档及其相关样式表 的任何程序。 用户代理可以显示文档、朗读文档、 打印文档、将其转换为另一种格式等。 对于CSS规范的目的, 用户代理是指支持并解释这些规范中定义的层叠样式表的用户代理。
1.2. 背景:W3C流程与CSS
本节为非规范性内容。
在W3C流程中, 一个推荐轨道的文档会经过三个稳定性阶段,概述如下:
- 工作草案(WD)
-
这是W3C规范的设计阶段。 工作组根据内部和外部的反馈迭代规范。
第一个正式的工作草案被称为“首个公开工作草案”(FPWD)。 在CSS工作组中,发布FPWD表示整个工作组已同意按照编辑草案中大致范围和建议的方式对该模块进行工作。
向下一阶段的过渡有时被称为“最后征求意见工作草案”(LCWD)阶段。 CSS工作组在解决了所有已知问题后,会将工作草案转为这一阶段, 并且在没有通过构建测试和实现反馈而无法进一步改进时,才会进入该阶段。
“最后征求意见”的目的是为报告任何未解决的问题设定一个截止日期, 并要求工作组特别跟踪和处理收到的反馈。 评论跟踪文档是《意见处理报告》(DoC)。 它与更新后的草案一起提交给主管批准,以展示广泛的审查和接受度。
- 候选推荐标准(CR)
-
这是W3C规范的测试阶段。 值得注意的是,这个阶段主要是通过测试和实现来测试规范: 不是为了测试实现本身。 这个过程中通常会揭示更多的规范问题, 因此候选推荐标准会随着时间的推移而根据实现和测试反馈进行调整, 虽然通常比设计阶段(WD)期间的调整要少。
为了退出CR阶段,需要证明每个特性有两个正确的、独立的实现, 因此在此阶段,工作组会构建测试套件并生成实现报告。
过渡到下一个阶段是“提案推荐标准”(PR)。 在此阶段,W3C顾问委员会必须批准向REC过渡。
- 推荐标准(REC)
- 这是W3C规范的完成状态,代表了维护阶段。 此时,工作组仅维护勘误表, 并偶尔发布包含勘误信息的更新版规范。
编辑草案实际上是编辑者自己工作副本的实时副本。 它可能反映,也可能不反映工作组的共识, 有时可能处于自我不一致的状态。 (由于W3C的发布过程耗时且繁琐, 编辑草案通常是规范的最佳(最新)参考。 目前正在努力减少发布的摩擦, 以便官方草案能够定期更新, 而编辑草案可以回归其原始功能作为草稿空间。)
2. CSS规范的分类
所有稳定和正在进行中的CSS模块及其状态的列表 可以在CSS当前工作页面找到。
2.1. 层叠样式表(CSS)——官方定义
此概要文件仅包含我们认为稳定的规范以及我们拥有足够实现经验确保其稳定性的规范。
注意: 这并不是一个CSS桌面浏览器配置文件: 包含在此概要文件中的内容仅基于特性稳定性 而非预期使用或Web浏览器的采用。 此概要文件定义了CSS的最完整形式。
- CSS第2级,最新修订版(包括勘误表)[CSS2]
- 这定义了CSS的核心,其中部分内容被后来的规范覆盖。 我们特别建议阅读第2章, 其中介绍了CSS的一些基本概念 及其设计原则。
- CSS语法第3级 [CSS-SYNTAX-3]
- 替代了CSS2§4.1、CSS2§4.2、CSS2§4.4和CSS2§G, 重新定义了CSS的解析方式。
- CSS样式属性 [CSS-STYLE-ATTR]
- 定义了如何在标记属性中嵌入CSS声明。
- 媒体查询第3级 [CSS3-MEDIAQUERIES]
- 替代了CSS2§7.3,并扩展了媒体特定样式的语法。
- CSS条件规则第3级 [CSS-CONDITIONAL-3]
- 扩展并取代了CSS2§7.2, 更新了@media规则的定义,允许嵌套 并引入@supports规则以进行特性支持查询。
- 选择器第3级 [SELECTORS-3]
- 替代了CSS2§5和CSS2§6.4.3,定义了扩展的选择器范围。
- CSS命名空间 [CSS3-NAMESPACE]
- 引入了@namespace规则,以允许使用命名空间前缀的选择器。
- CSS层叠和继承第4级 [CSS-CASCADE-4]
- 扩展并取代了CSS2§1.4.3和CSS2§6,以及[CSS-CASCADE-3]。 描述了如何整理样式规则并为所有元素上的所有属性分配值。 通过层叠和继承,值会在所有元素上的所有属性中传播。
- CSS值与单位第3级 [CSS-VALUES-3]
- 扩展并取代了CSS2§1.4.2.1、CSS2§4.3和CSS2§A.2.1–3, 定义了CSS的属性定义语法 并扩展了其单位集。
- CSS自定义属性用于层叠变量模块第1级 [CSS-VARIABLES-1]
- 引入了层叠变量作为一种新型基本值类型,可被所有CSS属性接受, 并引入了定义它们的自定义属性。
- CSS框模型第3级 [CSS-BOX-3]
- 替代了CSS2§8.1、§8.2、§8.3(但不包括§8.3.1)和§8.4。
- CSS颜色第4级 [CSS-COLOR-4]
- 扩展并取代了CSS2§4.3.6、CSS2§14.1和CSS2§18.2, 还扩展并取代了[CSS-COLOR-3], 引入了超越sRGB的扩展颜色空间, 扩展颜色值, 以及用于颜色的CSS对象模型扩展。 还定义了透明度 属性。
- CSS背景和边框第3级 [CSS-BACKGROUNDS-3]
- 扩展并取代了CSS2§8.5和CSS2§14.2, 提供了对背景和边框的更多控制, 包括分层背景图像、 图像边框、 和阴影。
- CSS图像第3级 [CSS-IMAGES-3]
- 重新定义并合并了外部二维图像值类型, 引入了原生二维渐变, 并增加了对替换元素大小和渲染的额外控制。
- CSS字体第3级 [CSS-FONTS-3]
- 扩展并取代了CSS2§15 并提供了对字体选择和功能选择的更多控制。
- CSS书写模式第3级 [CSS-WRITING-MODES-3]
- 定义了CSS对各种国际书写模式的支持, 如从左到右(例如拉丁或印度文), 从右到左(例如希伯来文或阿拉伯文), 双向(例如混合的拉丁文和阿拉伯文)和垂直(例如亚洲书写系统)。 替代并扩展了CSS2§8.6和§9.10。
- CSS多列布局第1级 [CSS-MULTICOL-1]
- 将多列流引入CSS布局。
- CSS弹性盒模型第1级 [CSS-FLEXBOX-1]
- 为CSS引入了一种灵活的线性布局模型。
- CSS用户界面模块第3级 [CSS-UI-3]
- 扩展并取代了CSS2§18.1和CSS2§18.4, 定义了光标、轮廓, 以及几个增强用户界面的新CSS特性。
- CSS封装模块第1级 [CSS-CONTAIN-1]
- 引入了封装 属性, 它通过强制对元素子树的独立CSS处理, 使用户代理在使用得当时能够进行大规模优化。
- CSS变换第1级 [CSS-TRANSFORMS-1]
- 将基于坐标的图形变换引入CSS。
- CSS合成与混合第1级 [COMPOSITING]
- 定义了叠加内容的合成与混合 并引入了控制其模式的特性。
- CSS缓动函数第1级 [CSS-EASING-1]。
- 描述了作者定义变换的一种方式, 该变换控制某些值的变化速度。 应用于动画时, 这种变换可用于生成模仿物理现象如动量的动画, 或使动画以离散步骤移动,产生类似机器人移动的效果。
- CSS计数器样式第3级 [CSS-COUNTER-STYLES-3]
- 引入了@counter-style规则, 允许作者定义自己的自定义计数器样式, 以用于CSS列表标记和生成内容计数器[CSS-LISTS-3]。 它还预定义了一组常见的计数器样式, 包括CSS2和CSS2.1中存在的样式。
注意: 虽然我们不预期对形成此快照的规范进行重大更改, 但它们的包含并不意味着它们是冻结的。 工作组将继续解决在这些规范中发现的问题。 实现者应关注www-style和/或 CSS工作组博客的任何相关变更、修正或澄清。
2.2. 相对稳定的模块,但实现经验有限
以下模块的设计工作已经完成,并且相对稳定,但尚未经过大量测试和实现经验。我们希望在未来的CSS 官方定义中将其纳入。
- Media Queries Level 4 [MEDIAQUERIES-4]
- 扩展并取代了[CSS3-MEDIAQUERIES],扩展了语法,弃用大多数媒体类型,并引入了新的媒体特性。
- CSS Display Module Level 3 [CSS-DISPLAY-3]
- 取代了CSS2§9.1.2, §9.2.1 (但不包括§9.2.1.1), §9.2.2 (但不包括§9.2.2.1), §9.2.3, 和§9.2.4 (并为取代§9.7奠定了基础), 定义了如何从文档元素树生成CSS格式化框树,并定义了控制它的display属性。
- CSS Writing Modes Level 4 [CSS-WRITING-MODES-4]
- 扩展并取代了[CSS-WRITING-MODES-3],增加了更多垂直书写的选项。
- CSS Fragmentation Module Level 3 [CSS-BREAK-3]
- 描述了将流划分为页面、列或区域的分片模型,并定义了控制它的属性。扩展并取代了CSS2§13.3。
- CSS Box Alignment Module Level 3 [CSS-ALIGN-3]
- 引入了在各种CSS盒布局模型中控制盒子在其容器内对齐的属性:块布局、表布局、弹性布局和网格布局。
- CSS Shapes Module Level 1 [CSS-SHAPES-1]
- 扩展了浮动(CSS2§9.5),以实现非矩形的包裹形状。
- CSS Text Module Level 3 [CSS-TEXT-3]
- 扩展并取代了CSS2§16,除了§16.2,定义了文本操作的属性,并指定了其处理模型。涵盖了换行、对齐、空白处理和文本转换。
- CSS Text Decoration Level 3 [CSS-TEXT-DECOR-3]
- 扩展并取代了CSS2§16.3,提供了对文本装饰线的更多控制,并增加了指定文本强调标记和文本阴影的能力。
- CSS Masking Level 1 [CSS-MASKING-1]
- 取代了CSS2§11.1.2,并引入了更强大的裁剪和遮罩内容的方法。
- CSS Scroll Snap Module Level 1 [CSS-SCROLL-SNAP-1]
- 包含用于控制滚动行为的“捕捉位置”功能。
- CSS Speech Module Level 1 [CSS-SPEECH-1]
- 取代了CSS2§A,全面修订了(非规范性)语音渲染章节。
- CSS Scrollbars Styling Module Level 1 [CSS-SCROLLBARS-1]
- 定义了影响滚动条视觉样式的属性,增加了控制其颜色和宽度的功能。
- CSS View Transitions Module Level 1 [CSS-VIEW-TRANSITIONS-1]
- 定义了视图过渡API,以及相关属性和伪元素,允许开发者创建表示文档状态变化的动画视觉过渡效果。
2.3. 具有粗糙互操作性的模块
尽管以下模块已广泛部署,并具有粗糙的互操作性,但其细节尚未完全确定或规范充分, 需要更多的测试和错误修复。我们希望在未来的CSS 官方定义中将其纳入。
- CSS Transitions Level 1 [CSS-TRANSITIONS-1] 和 CSS Animations Level 1 [CSS-ANIMATIONS-1]。
- 引入了随时间变化CSS 属性计算值的机制。
- CSS Grid Layout Module Level 1 [CSS-GRID-1]
- 引入了一个基于二维网格的布局系统,专为用户界面设计优化。在网格布局模型中,网格容器的子元素可以放置到预定义的灵活或固定大小的布局网格中的任意槽位。
- CSS Grid Layout Module Level 2 [CSS-GRID-2]
- 扩展并取代了[CSS-GRID-1],引入了用于管理嵌套标记的共享网格框架的“子网格”。
- CSS Will Change Level 1 [CSS-WILL-CHANGE-1]
- 引入了一个名为will-change的性能提示属性。
- Filter Effects Module Level 1 [FILTER-EFFECTS-1]
- 引入了过滤效果,作为在元素显示在文档中之前处理其渲染的一种方式。
- CSS Font Loading Module Level 3 [CSS-FONT-LOADING-3]
- 引入了用于动态加载字体资源的事件和接口。
- CSS Box Sizing Level 3 [CSS-SIZING-3]
- 覆盖并扩展了CSS§10,扩展了尺寸属性的值集合,引入了更精确的尺寸术语,并更精确和详细地定义了在CSS2中仅模糊定义的各种自动尺寸概念。
- CSS Transforms Level 2 [CSS-TRANSFORMS-2]
- 基于[CSS-TRANSFORMS-1]增加了新的变换函数和属性,用于三维变换,并引入了用于简单变换的便捷函数。
- CSS Lists and Counters Module Level 3 [CSS-LISTS-3]
- 包含与列表计数器相关的CSS功能:样式化它们、定位它们并操控它们的值。
- CSS Logical Properties and Values Level 1 [CSS-LOGICAL-1]
- 引入了逻辑属性和值,赋予作者通过逻辑方向和尺寸映射控制布局的能力。同时还定义了在[CSS2]中定义的特性 的逻辑属性和值。这些属性是与相应物理属性对应的书写模式相对属性。
- CSS Positioned Layout Module Level 3 [CSS-POSITION-3]
- 定义了CSS的基于坐标的定位和偏移方案:相对定位,粘性定位,绝对定位, 和固定定位。
- Resize Observer [RESIZE-OBSERVER-1]
- 本规范描述了用于观察元素主框大小变化的API。
- Web Animations [WEB-ANIMATIONS-1]
- 定义了用于同步和定时Web页面呈现变化的模型,并定义了与此模型交互的应用编程接口。
- CSS Fonts Module Level 4 [CSS-FONTS-4]
- 扩展并取代了CSS Fonts 3,并提供了对字体选择和功能选择的更多控制,包括对OpenType变体的支持。
- CSS Color Adjustment Module Level 1 [CSS-COLOR-ADJUST-1]
- 本模块引入了模型和控件,用于通过用户代理处理用户偏好和设备输出优化的自动颜色调整。
- CSS Conditional Rules Module Level 4 [CSS-CONDITIONAL-4]
- 扩展了CSS Conditional 3,以允许测试支持的选择器。
- CSS Cascading and Inheritance Level 5 [CSS-CASCADE-5]
- 扩展了CSS Cascade 4,以增加级联层。
2.4. CSS 等级
层叠样式表没有传统意义上的版本;相反,它有等级。每个 CSS 等级都建立在前一版本的基础上,改进定义并添加新功能。每个较高级别的功能集是任何较低级别的超集,而在较高级别中允许的功能行为是较低级别允许的行为的子集。因此,符合较高级别 CSS 的用户代理也符合所有较低级别。
- CSS Level 1
- CSS 工作组认为CSS1 规范已经过时。CSS Level 1定义为CSS1规范中定义的所有功能(属性、值、规则等),但使用CSS2.1 规范中的语法和定义。CSS 样式属性定义了它在元素特定样式属性中的包含。
- CSS Level 2
-
尽管CSS2 规范在技术上是 W3C 推荐标准,但它在
W3C
定义候选推荐标准阶段之前就已经进入了推荐阶段。随着时间的推移,实施经验和进一步的审查揭示了 CSS2 规范中的许多问题,因此 CSS 工作组选择定义CSS
Level 2 Revision
1(CSS2.1),而不是扩大已经非常庞杂的勘误表。在两个规范之间的任何冲突情况下,CSS2.1
包含了最终定义。
一旦 CSS2.1 成为候选推荐标准——实际上尽管并非正式达到与 CSS2 相同的稳定性级别——它就废除了 CSS2 推荐标准。CSS2 中被 CSS2.1 删除的功能应被视为处于候选推荐标准阶段,但请注意,这些功能中的许多已经或将被纳入 CSS Level 3 工作草案,一旦该规范达到候选推荐标准阶段,就会废除 CSS2 中的定义。
CSS2.1 规范定义了CSS Level 2,CSS 样式属性规范定义了它在元素特定样式属性中的包含。
- CSS Level 3
-
CSS Level
3模块逐个构建在CSS Level
2的基础上,使用CSS2.1规范作为核心。每个模块添加功能和/或替换CSS2.1规范的一部分。CSS
工作组的意图是,新CSS模块不会与CSS2.1规范相矛盾:它们只会增加功能并改进定义。随着每个模块的完成,它将被插入CSS2.1加上先前完成的模块的现有系统中。
从这个级别开始,模块是独立分级的:例如,选择器第4级可能会在CSS Line模块第3级之前完成。没有CSS Level 2对应物的模块从第1级开始;更新CSS Level 2中存在的功能的模块从第3级开始。
- CSS Level 4及后续等级
- 没有CSS Level 4。独立模块可以达到第4级或更高,但CSS语言不再有等级。(“CSS Level 3”这个术语仅用于与之前的整体版本区分。)
2.5. CSS 配置文件
并非所有实现都会实现CSS中定义的所有功能。
过去,工作组发布了一些配置文件,旨在定义各种用户代理应支持的CSS的最小子集。
这项工作已经停止,因为工作组发现它既无效也无用,之前定义的配置文件现在不再维护。
注意: 即使是部分实现了 CSS,如果该子集是官方配置文件,也必须遵循部分实现的前向兼容解析规则。
3. CSS 负责任实施的要求
以下章节定义了负责实施CSS以促进当前和未来互操作性的若干一致性要求。
3.1. 部分实现
为了使作者能够利用向前兼容的解析规则分配回退值,CSS 渲染器必须将任何其不支持的@规则、属性、属性值、关键字和其他语法结构视为无效(并根据需要忽略)。 特别是,用户代理不得在单个多值属性声明中有选择地忽略不支持的属性值并支持已支持的值:如果任何值被视为无效(因为不支持的值必须被视为无效),CSS 要求整个声明被忽略。
3.2. 不稳定和专有功能的实现
为了避免与未来稳定的CSS功能发生冲突,CSS工作组建议以下关于实施不稳定功能和CSS的专有扩展的最佳实践:
3.2.1. 实验和不稳定功能
实现描述在W3C规范中的不稳定功能,但这些功能并不具备互操作性, 不应广泛发布以供一般使用;但可以在受控环境中发布以供有限的实验使用。
为什么?
我们希望允许作者和实施者对功能进行实验并提供反馈,但防止作者在生产网站中依赖它们,从而通过内容依赖“锁定”某些语法或行为,这些语法或行为可能会在以后发生变化。在W3C流程中,CSS功能在其规范达到候选推荐(CR)阶段之前,均被视为不稳定。在特殊情况下,CSS工作组还可以通过正式记录的决议,将CR前功能添加到可安全广泛使用的功能集中。参见§ 4 可安全发布的CR前例外情况。
注意:厂商应明确咨询工作组,不要在这一点上做出假设,因为通常尚未变化的CR前规范往往更过时而非稳定。
3.2.2. 专有和非标准化功能
为避免与未来的CSS功能发生冲突,CSS2.1规范为CSS的专有和实验性扩展保留了一个前缀语法 [CSS2]。 当一个CSS功能在仅对单个厂商的用户代理可访问的封闭环境中使用时,该功能即为专有扩展。 UA应仅通过厂商前缀语法支持此类专有扩展,并且不应将其暴露在如万维网这样的开放(多UA)环境中。
为什么?
前缀要求允许在封闭环境中发布专用功能,而不会与未来的标准CSS添加内容冲突。限制对开放系统的暴露是为了防止意外导致公共CSS环境依赖未标准化的专有扩展。即使某个功能最终旨在用于Web,如果它尚未标准化,也不应暴露于Web。
3.2.3. 市场压力与事实标准
如果某个功能是不稳定的(即规范尚未稳定),但
-
至少有三个用户代理实现了该功能 (或者 一个用户代理已经违反其他规则,并在生产版本中为广泛使用而发布了一个不稳定或其他非标准功能),
-
并且这些实现具有粗糙的互操作性,
-
并且 CSS 工作组已记录一致认为该功能应该存在并发布,
实现者可以在广泛发布的版本中无前缀地发布该功能。粗糙的互操作性由主观判断来满足,即使可能存在差异,这些实现仍足够相似,可以在生产网站中用于大量用例。
请注意,仍然必须咨询CSS工作组以确保跨供应商的协调,并确保各供应商的CSS专家进行一致性审查。 另请注意,粗糙的互操作性通常仍意味着在边缘(或不那么边缘)情况下缺乏互操作性,特别是因为细节尚未通过标准审查过程进行修正。
为什么?
如果某个功能在完成标准化之前已经足够受欢迎,以至于三个或更多浏览器已经实现了它,则此条款允许发布压力得以释放。 此外,如果某个功能已经流行开来并且网站已经开始依赖它,那么假装它仍然是“实验性的”对任何人都没有帮助。 允许其他人无前缀地发布承认该功能现在实际上已成为事实标准,并鼓励作者编写跨平台代码。3.2.3.1. 供应商前缀的不稳定功能
当在生产版本中将此类标准轨迹的不稳定功能暴露给Web时,实现应同时支持供应商前缀和无前缀语法。 一旦该功能稳定下来并且实现已更新以匹配互操作行为,则应删除对供应商前缀语法的支持。
为什么?
这是为了让作者可以使用无前缀语法来针对所有实现,但在必要时,可以针对特定实现来解决在标准/错误修正过程中逐步解决的实现差异问题。缺乏仅支持前缀语法的阶段极大地降低了仅使用供应商前缀语法编写样式表的风险。 这反过来又允许用户代理供应商在功能稳定后淘汰其前缀语法,并降低破坏现有内容的风险。 它还减少了一些供应商偶尔感到的需要支持带有另一个供应商前缀的功能的需求,因为内容依赖于该语法。
任何向作者推广不稳定功能的人都应使用其标准无前缀语法进行文档化,并避免鼓励将供应商前缀语法用于除解决实现差异以外的任何目的。
3.2.3.2. 保持CSS的开放性
为了保持CSS作为一项技术的开放性,供应商应使其他实现者能够自由实现他们发布的任何功能。 为此,他们应提供规范编辑和测试资源以完成此类功能的标准化,并避免给竞争对手发布该功能设置其他障碍(例如平台依赖、许可限制)。
3.3. CR级功能的实现
一旦规范达到候选推荐阶段,实现者应发布任何他们可以证明已根据规范正确实现的CR级功能的无前缀实现,并应避免暴露该功能的带前缀变体。
为了建立和维护CSS在不同实现之间的互操作性,CSS工作组要求非实验性的CSS渲染器在发布任何CSS功能的无前缀实现之前,向W3C提交实现报告(如果需要,还需提交用于该实现报告的测试用例)。提交给W3C的测试用例将由CSS工作组进行审查和修正。
关于提交测试用例和实现报告的更多信息,可以在CSS工作组的网站上找到:https://www.w3.org/Style/CSS/Test/。 有关问题应发送到public-css-testsuite@w3.org邮件列表。
4. 安全发布的CR前例外情况
以下功能已被CSS工作组明确且积极地批准在规范达到候选推荐之前广泛发布。 参见§ 3.2.1 实验和不稳定功能。
- 与尺寸属性(width、height等)、边框属性、边距和填充属性的流相对等效项。参见解释和规范。
- 尺寸属性的min-content和max-content关键字。参见决策和规范。
- conic-gradient()渐变符号。参见决策。
- aspect-ratio属性。[CSS-SIZING-4]
- translate、rotate和scale属性。[CSS-TRANSFORMS-2]
- hyphenate-character属性。[CSS-TEXT-4]
- color-mix()函数。[CSS-COLOR-5]
- <color-interpolation-method>,定义于[CSS-COLOR-4]并用于线性、径向和圆锥渐变的插值。[CSS-IMAGES-4]
- 定义于relative color语法,定义于[CSS-COLOR-5]
以下功能已被CSS工作组明确且追溯性地批准在规范达到候选推荐之前广泛发布:
- CSS Animations Level 1和CSS Transitions Level 1中的所有内容。
- :dir()、:lang()和:focus-within伪类,出自[SELECTORS-4]。
5. 索引
这些章节是非规范性的。
5.1. 术语索引
- =
- ~=
- 1st <length>
- 2d matrix
- 2nd <length>
- 3rd <length [0,∞]>
- 4th <length>
- absolute length
- absolutely positioned element
- abstract dimensions
- :active
- activeborder
- activecaption
- active duration
- active (pseudo-class)
- actual value
- additive tuple
- adjoining margins
- advance measure
- :after
- after
- after-change style
- aliceblue
- alignment baseline
- alignment container
- alignment context
- alignment subject
- 'all' media group
- alphabetic baseline
- <alphavalue>
- ambiguous image url
- an+b
- ancestor
- anchor
- anchor unit
- <angle>
- animation origin
- animation-tainted
- anonymous
- anonymous box
- anonymous inline boxes
- antiquewhite
- apply to
- appworkspace
- aqua
- aquamarine
- are a valid escape
- aspect value
- atomic inline
- atomic inline box
- atomic inline-level box
- at-rule
- attr()
- attribute
- 'audio' media group
- auditory icon
- augmented grid
- aural box model
- author
- authoring tool
- author origin
- author-origin
- author presentational hint origin
- author style sheet
- automatic column position
- automatic grid position
- automatic numbering
- automatic placement
- automatic position
- automatic row position
- auto-placement
- auto-placement cursor
- available font faces
- available grid space
- avoid break values
- axis-lock
- axis value
- azure
- backdrop
- background
- background painting area
- background positioning area
- backslash escapes
- baseline
- baseline alignment
- baseline alignment preference
- baseline content-alignment
- baseline self-alignment
- baseline set
- baseline-sharing group
- baseline table
- base size
- bearing angle
- :before
- before
- before-change style
- before flag
- beige
- bfc
- bidi formatting characters
- bidi-isolate
- bidi-isolated
- bidi isolation
- bidi paragraph
- bidirectionality
- bidirectionality (bidi)
- bi-orientational
- bi-orientational transform
- bisque
- 'bitmap' media group
- black
- blanchedalmond
- ()-block
- []-block
- block
- {}-block
- block at-rule
- block axis
- block-axis
- block box
- block container
- block container box
- block dimension
- block end
- block-end
- block flow direction
- block formatting context
- block formatting context root
- blockification
- blockify
- block layout
- block-level
- block-level box
- block-level content
- block-level element
- block scripts
- block size
- block-size
- block start
- block-start
- blue
- blueviolet
- blur radius
- boolean context
- border box
- border edge
- border image area
- border::of a box
- border radius
- <border-style>
- bottom
- box
- box alignment properties
- box::border
- box::content
- box::content height
- box::content width
- box-corner
- box fragment
- box::margin
- box::overflow
- box::padding
- box tree
- break
- brown
- burlywood
- buttonface
- buttonhighlight
- buttonshadow
- buttontext
- cadetblue
- cancel
- canonical unit
- canvas
- canvas background
- canvas surface
- captiontext
- captures snap positions
- cascade
- cascade-dependent keyword
- cascaded independently
- cascaded value
- cascade origin
- central baseline
- character
- character encoding
- character map
- "@charset"
- chartreuse
- check if three code points would start an ident sequence
- check if three code points would start a number
- check if three code points would start a unicode-range
- check if two code points are a valid escape
- child
- child combinator
- child selector
- chinese
- chocolate
- circled-lower-latin
- clamp a grid area
- clearance.
- clipping path
- clipping region
- closest-side
- clustered scripts
- collapse
- collapsed
- collapsed flex item
- collapsed grid track
- collapsed gutter
- collapsed track
- collapse through
- collapsible white space
- collapsing margin
- <color>
- color
- color stop
- color stop list
- color transition hint
- column box
- column break
- column gap
- column height
- column rule
- column width
- combinator
- combinators
- combined duration
- compatible baseline alignment preferences
- compatible units
- complete
- completed transition
- component value
- composite face
- computed <image>
- computed track list
- computed value
- concrete object size
- conditional group rule
- conditional import
- conditionally hang
- conformance
- consecutive
- constraint rectangle
- consume a block
- consume a block's contents
- consume a component value
- consume a declaration
- consume a function
- consume a list of component values
- consume a list of declarations
- consume a list of rules
- consume an at-rule
- consume an escaped code point
- consume an ident-like token
- consume an ident sequence
- consume a number
- consume a numeric token
- consume a qualified rule
- consume a simple block
- consume a string token
- consume a style block's contents
- consume a stylesheet's contents
- consume a token
- consume a unicode-range token
- consume a url token
- consume comments
- consume the next input token
- consume the remnants of a bad declaration
- consume the remnants of a bad url
- consume the value of a unicode-range descriptor
- contain constraint
- containing block
- containing block chain
- containing block for all descendants
- containing block::initial
- containment
- content
- content-based minimum size
- content box
- content distribution
- content-distribution
- content-distribution properties
- content edge
- content language
- content::of a box
- content::rendered
- content size suggestion
- content writing system
- continuous media
- 'continuous' media group
- convert a string to a number
- coordinated self-alignment preference
- coral
- cornflowerblue
- cornsilk
- <counter>
- counter()
- counters
- counter style
- counter symbol
- cover constraint
- crimson
- cross axis
- cross-axis
- cross-axis baseline set
- cross dimension
- cross-end
- cross size
- cross-size
- cross size property
- cross-start
- css bracketed range notation
- css-connected
- css feature queries
- cssfontfacerule
- cssfontfeaturevaluesrule
- css ident
- css identifier
- css ident sequence
- css qualified name
- css-wide keywords
- cubic bézier easing function
- currentcolor
- current input code point
- current input token
- current transformation matrix
- current value
- cursive
- cursive script
- custom property
- cyan
- darkblue
- darkcyan
- darkgoldenrod
- darkgray
- darkgreen
- darkgrey
- darkkhaki
- darkmagenta
- darkolivegreen
- darkorange
- darkorchid
- darkred
- darksalmon
- darkseagreen
- darkslateblue
- darkslategray
- darkslategrey
- darkturquoise
- darkviolet
- declaration
- declaration block
- declared
- declared value
- decode bytes
- decorating box
- deeppink
- deepskyblue
- default face
- default namespace
- default object size
- default sizing algorithm
- default style sheet
- definite
- definite column position
- definite column span
- definite grid position
- definite grid span
- definite position
- definite row position
- definite row span
- definite size
- definite span
- descendant
- descendant-selectors
- descriptor
- descriptor declarations
- destination
- determine the fallback encoding
- device pixel
- dice
- digit
- dimension
- dimgray
- dimgrey
- directional embedding
- directional override
- discard a mark
- discard a token
- discard whitespace
- display type
- distributed alignment
- distribute extra space
- document
- document language
- document order
- document tree
- document white space
- document white space characters
- dodgerblue
- dominant baseline
- easing function
- effective character map
- element
- element::following
- element::preceding
- element tree
- emoji presentation participating code points
- empty
- em (unit)
- encapsulation contexts
- end
- ending point
- ending shape
- ending token
- endmost
- end time
- end value
- environment encoding
- eof code point
- escaping
- establish an independent formatting context
- establish an orthogonal flow
- established an independent formatting context
- establishes an independent formatting context
- establishing an independent formatting context
- exact matching
- expanded name
- explicit grid
- explicit grid column
- explicit grid properties
- explicit grid row
- explicit grid track
- explicitly-assigned line name
- ex (unit)
- fallback alignment
- false in the negative range
- fantasy
- farthest-side
- fetch a font
- fetch an @import
- fictional tag sequence
- filter code points
- filtered code points
- filter primitive
- filter primitive attributes
- filter primitive subregion
- filter primitive tree
- filter region
- find the matching font faces
- fire a font load event
- firebrick
- :first
- first available font
- first-baseline alignment
- first-baseline content-alignment
- first baselines
- first-baseline self-alignment
- first baseline set
- :first-child
- first-child
- first cross-axis baseline set
- first formatted line
- :first-letter
- first-letter
- :first-line
- first-line
- first main-axis baseline set
- first symbol value
- fixed sizing function
- flex base size
- flex basis
- flex container
- flex direction
- flex factor
- flex factor sum
- flex formatting context
- flex fraction
- flex grow factor
- flexible
- flexible length
- flexible sizing function
- flexible tracks
- flex item
- flex layout
- flex-level
- flex line
- flex shrink factor
- float area
- float rules
- floralwhite
- flow layout
- flow of an element
- flow-relative
- flow-relative direction
- :focus
- focus
- focus (pseudo-class)
- following element
- font block period
- font download timer
- font failure period
- font feature value declaration
- font-feature-value-type
- font-relative lengths
- font source
- font specific
- font swap period
- footnote
- forced break
- forced break values
- forced line break
- forced paragraph break
- forestgreen
- formatting context
- formatting structure
- forward-compatible parsing
- fragment
- fragmentainer
- fragmentation
- fragmentation break
- fragmentation container
- fragmentation context
- fragmentation direction
- fragmentation root
- fragmented flow
- free space
- <frequency>
- fuchsia
- full-size
- full-size kana
- full-width
- fully inflexible
- function
- functional notation
- gainsboro
- generate a counter
- generate a counter representation
- generate baselines
- generated content
- <generic-voice>
- ghostwhite
- go
- gold
- goldenrod
- gradient-average-color
- gradient box
- gradient center
- gradient function
- gradient line
- grapheme cluster
- gray
- graytext
- green
- greenyellow
- grey
- grid
- grid area
- grid cell
- grid column
- grid column line
- grid container
- grid formatting context
- grid item
- grid item placement algorithm
- grid layout
- grid layout algorithm
- grid-level
- grid line
- 'grid' media group
- grid-modified document order
- grid order
- grid placement
- grid-placement property
- grid position
- grid row
- grid row line
- grid sizing algorithm
- grid span
- grid track
- growth limit
- guaranteed-invalid value
- gutter
- half-width
- hang
- hanging glyph
- height
- hex digit
- highlight
- highlighttext
- honeydew
- horizontal axis
- horizontal block flow
- horizontal dimension
- horizontal offset
- horizontal-only
- horizontal script
- horizontal typographic mode
- horizontal writing mode
- hotpink
- :hover
- hover (pseudo-class)
- hyphenate
- hyphenation
- hyphenation opportunity
- hyphen-separated matching
- hypothetical cross size
- hypothetical fr size
- hypothetical main size
- ident
- ident code point
- identifier
- identity transform function
- ident sequence
- ident-start code point
- ignore
- ignored
- illegal
- implicit grid
- implicit grid column
- implicit grid lines
- implicit grid properties
- implicit grid row
- implicit grid track
- implicitly-assigned line name
- implicitly-named area
- @import
- important
- import conditions
- inactiveborder
- inactivecaption
- inactivecaptiontext
- indefinite
- indefinite size
- independent formatting context
- index
- indianred
- indigo
- infinitely growable
- in flow
- in-flow
- infobackground
- infotext
- inherit
- inheritance
- inherited property
- inherited value
- initial containing block
- initial free space
- initial representation for the counter value
- initial value
- inline
- inline axis
- inline-axis
- inline base direction
- inline block
- inline-block
- inline block box
- inline box
- inline dimension
- inline end
- inline-end
- inline formatting context
- inline-level
- inline-level box
- inline-level content
- inline-level element
- inline size
- inline-size
- inline start
- inline-start
- inlinification
- inlinify
- inner box-shadow
- inner display type
- inner edge
- input progress value
- input stream
- installed font fallback
- integer
- intended direction
- intended direction and end position
- intended end position
- 'interactive media group
- internal ruby box
- internal ruby element
- internal table box
- internal table element
- interpreter
- intrinsic dimensions
- intrinsic sizing function
- invalid
- invalid at computed-value time
- invalid image
- invisible
- isolated sequence
- isolation
- iteration order
- ivory
- japanese
- justification opportunity
- keyword
- khaki
- known
- korean
- :lang
- lang (pseudo-class)
- last-baseline alignment
- last-baseline content-alignment
- last baselines
- last-baseline self-alignment
- last baseline set
- last cross-axis baseline set
- last main-axis baseline set
- lavender
- lavenderblush
- lawngreen
- laying out in-place
- layout containment
- layout containment box
- layout-internal
- :left
- left
- leftover space
- legacy name alias
- legacy shorthand
- legacy value alias
- lemonchiffon
- letter
- lightblue
- lightcoral
- lightcyan
- lightgoldenrodyellow
- lightgray
- lightgreen
- lightgrey
- lightpink
- lightsalmon
- lightseagreen
- lightskyblue
- lightslategray
- lightslategrey
- light source
- lightsteelblue
- lightyellow
- lime
- limegreen
- limited max-content contribution
- limited min-content contribution
- linear easing function
- linear timing function
- line box
- line break
- line breaking
- line breaking process
- line-left
- linen
- line name
- line name set
- line orientation
- line-over
- line-relative
- line-relative direction
- line-right
- line-under
- :link
- link (pseudo-class)
- list-item
- list properties
- loading image
- local coordinate system
- local url flag
- logical height
- logical width
- longhand
- longhand property
- lowercase letter
- magenta
- main axis
- main-axis
- main-axis baseline set
- main dimension
- main-end
- main size
- main-size
- main size property
- main-start
- margin box
- margin edge
- margin::of a box
- <margin-width>
- mark
- marked indexes
- maroon
- mask border image
- mask border image area
- mask image
- mask layer image
- mask painting area
- mask-position
- mask positioning area
- mask-size
- match
- matching transition delay
- matching transition duration
- matching transition-property value
- matching transition timing function
- max cross size
- max cross size property
- maximum allowed code point
- max inner height
- max inner width
- max main size
- max main size property
- max track sizing function
- may
- media
- media condition
- media-dependent import
- media feature
- media group
- media query
- media query list
- media query modifier
- media type
- mediumaquamarine
- mediumblue
- mediumorchid
- mediumpurple
- mediumseagreen
- mediumslateblue
- mediumspringgreen
- mediumturquoise
- mediumvioletred
- menu
- menutext
- message entity
- midnightblue
- min cross size
- min cross size property
- minimum contribution
- min inner height
- min inner width
- min main size
- min main size property
- mintcream
- min track sizing function
- mistyrose
- moccasin
- monolithic
- monospace
- multicol container
- multi-col line
- multicol line
- multi-column container
- multi-column formatting context
- multi-column layout
- multi-column line
- multi-column spanner
- multi-column spanning element
- multi-line flex container
- multiple declarations
- multiply
- must
- must not
- named cell token
- named grid area
- namespace prefix
- name-start code point
- natural aspect ratio
- natural dimension
- natural end-point
- natural height
- natural size
- natural width
- navajowhite
- navy
- nearest neighbor
- newline
- next input code point
- next input token
- next-sibling combinator
- next token
- non-ascii code point
- non-ascii ident code point
- 'none'::as display value
- non-overridable counter-style names
- non-printable code point
- non-replaced
- non-replaced element
- normal
- normalize into a token stream
- null cell token
- number
- numeric data types
- objects
- object size negotiation
- occupied
- oldlace
- olive
- olivedrab
- opacity
- operating coordinate space
- optimal viewing region
- optional
- orange
- orangered
- orchid
- order-modified document order
- orthogonal
- orthogonal flow
- other space separators
- outer box-shadow
- outer display type
- outer edge
- outline
- out of flow
- out-of-flow
- output of the cascade
- output progress value
- over
- overflow
- overflow alignment
- overflow columns
- padding box
- padding edge
- padding::of a box
- <padding-width>
- @page
- page area
- page box
- page break
- page-context
- paged media
- 'paged' media group
- page selector
- pagination
- paint containment
- paint containment box
- palegoldenrod
- palegreen
- paleturquoise
- palevioletred
- papayawhip
- parent
- parent box
- parse
- parse a block's contents
- parse a comma-separated list according to a css grammar
- parse a comma-separated list of component values
- parse a component value
- parse a css stylesheet
- parse a declaration
- parse a list
- parse a list of component values
- parse a list of declarations
- parse a list of rules
- parse a rule
- parse a style block's contents
- parse a stylesheet
- parse a stylesheet's contents
- parse error
- parse something according to a css grammar
- parsing a list
- participates in baseline alignment
- pass through filter
- peachpuff
- pending on the environment
- pending-substitution value
- percentage
- peru
- physical
- physical bottom
- physical dimensions
- physical direction
- physical left
- physical right
- physical top
- physical units
- pink
- pixel
- pixel unit
- plum
- positional alignment
- positioned element/box
- positioning scheme
- post-multiplied
- post-multiply
- powderblue
- preceding element
- pre-multiplied
- pre-multiply
- preserved tokens
- preserved white space
- primary filter primitive tree
- principal block-level box
- principal box
- principal writing mode
- process
- propagate
- propagation
- proper table child
- proper table row parent
- property
- property declarations
- pseudo-classes
- pseudo-classes:::active
- pseudo-classes:::focus
- pseudo-classes:::hover
- pseudo-classes:::lang
- pseudo-classes:::link
- pseudo-classes:::visited
- pseudo-class:::first
- pseudo-class:::left
- pseudo-class:::right
- pseudo-elements
- pseudo-elements:::after
- pseudo-elements:::before
- pseudo-elements:::first-letter
- pseudo-elements:::first-line
- purple
- quad width
- qualified rule
- range context
- recommended
- reconsume the current input code point
- reconsume the current input token
- red
- reference box
- reference pixel
- region break
- relative length
- relative positioning
- relative units
- remaining fragmentainer extent
- remaining free space
- rendered content
- render with a fallback font face
- render with an invisible fallback font face
- replaced
- replaced element
- representation
- required
- reset implicitly
- reset-only sub-property
- re-snap
- resolved type
- restore a mark
- reversing-adjusted start value
- reversing shortening factor
- :right
- right
- root
- root element
- rosybrown
- row group box
- row groups
- royalblue
- rule
- run-in
- run-in box
- run-in sequence
- running transition
- saddlebrown
- salmon
- sandybrown
- sans-serif
- scaled flex shrink factor
- scope
- screen reader
- scrollbar
- scroll snap
- scroll snap area
- scroll snap container
- scroll snapport
- scroll snap position
- seagreen
- seashell
- segment break
- selector
- selector::match
- selector::subject of
- self-alignment
- self-alignment properties
- semitone
- sequence of simple selectors
- serialize an <an+b> value
- serif
- set entries
- set explicitly
- shall
- shall not
- shared alignment context
- sheet
- shorthand
- shorthand property
- should
- should not
- sibling
- sideways typesetting
- sienna
- silver
- simple block
- simple selector
- single-line flex container
- size containment
- size containment box
- sizing as if empty
- sizing function
- skyblue
- slateblue
- slategray
- slategrey
- small
- small kana
- snow
- soft wrap break
- soft wrap opportunity
- source
- source document
- spaces
- space-separated matching
- space to fill
- span count
- spanner
- spanning element
- <specific-voice>
- specified size
- specified size suggestion
- specified value
- 'speech' media group
- spread break
- spread distance
- springgreen
- stacking context
- stack level
- start
- starting point
- startmost
- starts with an ident sequence
- starts with a number
- starts with a valid escape
- start time
- start value
- start with an ident sequence
- start with a number
- statement at-rule
- 'static' media group
- static-position rectangle
- steelblue
- step easing function
- step position
- steps
- stop or comma
- stretched
- strictness value
- <string>
- stroke bounding box
- structural pseudo-classes
- strut size
- stuck on the environment
- style attribute
- style change event
- style rule
- style sheet
- stylesheet
- subject (of selector)
- subjects of the selector
- sub-property
- subsequent-sibling combinator
- substitute a var()
- support
- supports queries
- switch the fontfaceset to loaded
- switch the fontfaceset to loading
- synthesize baseline
- synthesized baseline
- system fonts
- table caption box
- table element
- tables
- tabs
- tab size
- tab stop
- tabular container
- 'tactile' media group
- tan
- target main size
- teal
- text/css
- text node
- text sequence
- textual data types
- thistle
- threeddarkshadow
- threedface
- threedhighlight
- threedlightshadow
- threedshadow
- <time>
- timing function
- tokenization
- tokenize
- tokenizer
- tokens
- token stream
- tomato
- top
- tracking
- track list
- track section
- track sizing algorithm
- track sizing function
- transfer function element
- transfer function element attributes
- transferred size suggestion
- transformable element
- transformation matrix
- transformed element
- transitionable
- transition origin
- transparent
- trash token
- triangle
- trinary
- turquoise
- type selector
- typeset sideways
- typesetting sideways
- typesetting upright
- typeset upright
- typographic character
- typographic character unit
- typographic letter unit
- typographic mode
- ua
- ua origin
- ua-origin
- ua style sheet
- under
- unforced break
- universal selector
- unknown
- unoccupied
- upper-alpha-legal
- uppercase letter
- upright typesetting
- url
- use a negative sign
- used value
- user
- user agent
- user-agent origin
- user-agent style sheet
- user coordinate system
- user origin
- user-origin
- user style sheet
- uses a negative sign
- valid image
- validity
- valid style sheet
- value
- value definition syntax
- var() substitution
- vertical axis
- vertical block flow
- vertical dimension
- vertical offset
- vertical-only
- vertical script
- vertical typographic mode
- vertical writing mode
- viewport
- viewport-percentage lengths
- violet
- :visited
- visited (pseudo-class)
- visual angle unit
- visual formatting model
- 'visual' media group
- volume
- wheat
- white
- whitesmoke
- white space
- whitespace
- white space characters
- width
- window
- windowframe
- windowtext
- word separator
- word-separator character
- would start an ident sequence
- would start a number
- would start a unicode-range
- wrap
- wrapping
- writing mode
- x-axis
- x-height
- y-axis
- yellow
- yellowgreen
5.2. 选择器索引
5.3. At-Rule 索引
5.4. 属性索引
- --*
- align-content
- align-items
- align-self
- all
- animation
- animation-delay
- animation-direction
- animation-duration
- animation-fill-mode
- animation-iteration-count
- animation-name
- animation-play-state
- animation-timing-function
- azimuth
- background
- background-attachment
- background-blend-mode
- background-clip
- background-color
- background-image
- background-origin
- background-position
- background-repeat
- background-size
- border
- border-bottom
- border-bottom-color
- border-bottom-left-radius
- border-bottom-right-radius
- border-bottom-style
- border-bottom-width
- border-collapse
- border-color
- border-image
- border-image-outset
- border-image-repeat
- border-image-slice
- border-image-source
- border-image-width
- border-left
- border-left-color
- border-left-style
- border-left-width
- border-radius
- border-right
- border-right-color
- border-right-style
- border-right-width
- border-spacing
- border-style
- border-top
- border-top-color
- border-top-left-radius
- border-top-right-radius
- border-top-style
- border-top-width
- border-width
- bottom
- box-decoration-break
- box-shadow
- box-sizing
- break-after
- break-before
- break-inside
- caption-side
- caret-color
- clear
- clip
- clip-path
- clip-rule
- color
- color-interpolation-filters
- column-count
- column-fill
- column-gap
- column-rule
- column-rule-color
- column-rule-style
- column-rule-width
- columns
- column-span
- column-width
- contain
- content
- counter-increment
- counter-reset
- cue
- cue-after
- cue-before
- cursor
- direction
- display
- elevation
- empty-cells
- filter
- flex
- flex-basis
- flex-direction
- flex-flow
- flex-grow
- flex-shrink
- flex-wrap
- float
- flood-color
- flood-opacity
- font
- font-family
- font-feature-settings
- font-kerning
- font-language-override
- font-optical-sizing
- font-palette
- font-size
- font-size-adjust
- font-stretch
- font-style
- font-synthesis
- font-synthesis-position
- font-synthesis-small-caps
- font-synthesis-style
- font-synthesis-weight
- font-variant
- font-variant-alternates
- font-variant-caps
- font-variant-east-asian
- font-variant-emoji
- font-variant-ligatures
- font-variant-numeric
- font-variant-position
- font-variation-settings
- font-weight
- gap
- glyph-orientation-vertical
- grid
- grid-area
- grid-auto-columns
- grid-auto-flow
- grid-auto-rows
- grid-column
- grid-column-end
- grid-column-gap
- grid-column-start
- grid-gap
- grid-row
- grid-row-end
- grid-row-gap
- grid-row-start
- grid-template
- grid-template-areas
- grid-template-columns
- grid-template-rows
- hanging-punctuation
- height
- hyphens
- image-orientation
- image-rendering
- isolation
- justify-content
- justify-items
- justify-self
- left
- letter-spacing
- lighting-color
- line-break
- line-height
- list-style
- list-style-image
- list-style-position
- list-style-type
- margin
- margin-bottom
- margin-left
- margin-right
- margin-top
- mask
- mask-border
- mask-border-mode
- mask-border-outset
- mask-border-repeat
- mask-border-slice
- mask-border-source
- mask-border-width
- mask-clip
- mask-composite
- mask-image
- mask-mode
- mask-origin
- mask-position
- mask-repeat
- mask-size
- mask-type
- max-height
- max-width
- min-height
- min-width
- mix-blend-mode
- object-fit
- object-position
- order
- orphans
- outline
- outline-color
- outline-offset
- outline-style
- outline-width
- overflow
- overflow-wrap
- padding
- padding-bottom
- padding-left
- padding-right
- padding-top
- page-break-after
- page-break-before
- page-break-inside
- pause
- pause-after
- pause-before
- pitch
- pitch-range
- place-content
- place-items
- place-self
- play-during
- position
- property-name
- quotes
- resize
- rest
- rest-after
- rest-before
- richness
- right
- row-gap
- scroll-margin
- scroll-margin-block
- scroll-margin-block-end
- scroll-margin-block-start
- scroll-margin-bottom
- scroll-margin-inline
- scroll-margin-inline-end
- scroll-margin-inline-start
- scroll-margin-left
- scroll-margin-right
- scroll-margin-top
- scroll-padding
- scroll-padding-block
- scroll-padding-block-end
- scroll-padding-block-start
- scroll-padding-bottom
- scroll-padding-inline
- scroll-padding-inline-end
- scroll-padding-inline-start
- scroll-padding-left
- scroll-padding-right
- scroll-padding-top
- scroll-snap-align
- scroll-snap-stop
- scroll-snap-type
- shape-image-threshold
- shape-margin
- shape-outside
- speak
- speak-as
- speak-header
- speak-numeral
- speak-punctuation
- speech-rate
- stress
- table-layout
- tab-size
- text-align
- text-align-all
- text-align-last
- text-combine-upright
- text-decoration
- text-decoration-color
- text-decoration-line
- text-decoration-style
- text-emphasis
- text-emphasis-color
- text-emphasis-position
- text-emphasis-style
- text-indent
- text-justify
- text-orientation
- text-overflow
- text-shadow
- text-transform
- text-underline-position
- top
- transform
- transform-box
- transform-origin
- transition
- transition-delay
- transition-duration
- transition-property
- transition-timing-function
- unicode-bidi
- vertical-align
- visibility
- voice-balance
- voice-duration
- voice-family
- voice-pitch
- voice-range
- voice-rate
- voice-stress
- voice-volume
- volume
- white-space
- widows
- width
- will-change
- word-break
- word-spacing
- word-wrap
- writing-mode
- z-index
5.5. 值索引
- absolute
- add
- additive
- alias
- all
- allow-end
- all-petite-caps
- all-scroll
- all-small-caps
- alpha
- alphabetic
- alternate
- alternate-reverse
- always
- <angle>
- annotation(<feature-value-name>)
- anywhere
- arabic-indic
- armenian
- aural
-
auto
- in css-align-3, for align-self
- in css-align-3, for justify-self
- in css-backgrounds-3, for background-size
- in css-backgrounds-3, for border-image-width
- in css-break-3, for break-before, break-after
- in css-break-3, for break-inside, page-break-inside
- in css-counter-styles-3, for @counter-style/range
- in css-counter-styles-3, for @counter-style/speak-as
- in css-flexbox-1, for align-items, align-self
- in css-flexbox-1, for flex-basis
- in css-fonts-4, for @font-face/font-display
- in css-fonts-4, for font-kerning
- in css-fonts-4, for font-optical-sizing
- in css-fonts-4, for font-synthesis-position
- in css-fonts-4, for font-synthesis-small-caps
- in css-fonts-4, for font-synthesis-style
- in css-fonts-4, for font-synthesis-weight
- in css-fonts-4, for font-variant-emoji
- in css-grid-1, for <grid-line>
- in css-grid-1, for grid-template-columns, grid-template-rows
- in css-images-3, for image-rendering
- in css-multicol-1, for column-count
- in css-multicol-1, for column-fill
- in css-multicol-1, for column-width
- in css-scroll-snap-1, for scroll-padding, scroll-padding-inline, scroll-padding-inline-start, scroll-padding-inline-end, scroll-padding-block, scroll-padding-block-start, scroll-padding-block-end
- in css-speech-1, for speak
- in css-speech-1, for voice-duration
- in css-text-3, for hyphens
- in css-text-3, for line-break
- in css-text-3, for text-align-last
- in css-text-3, for text-justify
- in css-text-decor-3, for text-underline-position
- in css-ui-3, for caret-color
- in css-ui-3, for cursor
- in css-will-change-1, for will-change
- in filter-effects-1, for color-interpolation-filters
- auto-fill
- auto-fit
- [ auto-flow && dense? ] <'grid-auto-rows'>? / <'grid-template-columns'>
- avoid
- avoid-column
- avoid-page
- avoid-region
- backwards
- balance
- balance-all
- baseline
- <basic-shape>
- bengali
- bidi-override
- blink
- block
- bold
- bolder
- border-box
- both
- bottom
- braille
- break-all
- break-spaces
- break-word
- bullets
- cambodian
- capitalize
- caption
- cell
-
center
- in css-align-3, for <self-position>, <content-position>, justify-self, align-self, justify-content, align-content
- in css-backgrounds-3, for background-position
- in css-flexbox-1, for align-content
- in css-flexbox-1, for align-items, align-self
- in css-flexbox-1, for justify-content
- in css-scroll-snap-1, for scroll-snap-align
- in css-speech-1, for voice-balance
- in css-text-3, for text-align
- in css-transforms-1, for transform-origin
- ch
- character-variant(<feature-value-name>#)
- child
- circle
- cjk-decimal
- cjk-earthly-branch
- cjk-heavenly-stem
- cjk-ideographic
- clip
- clone
- close-quote
- closest-corner
- closest-side
- cm
- coarse
- collapse
- color
- color-burn
- color-dodge
- col-resize
- column
- column-reverse
- common-ligatures
- condensed
- contain
- content
- content-box
- contents
- context-menu
- contextual
- copy
- <counter-style-name>
- cover
- crisp-edges
- crosshair
- cursive
- cyclic
- dark
- darken
- dashed
- <decibel>
- decimal
- decimal-leading-zero
- default
- deg
- dense
- devanagari
- diagonal-fractions
- difference
- digits
- digits <integer>?
- digits <integer [2,4]>?
- disc
- disclosure-closed
- disclosure-open
- discretionary-ligatures
- distribute
- dot
- dotted
- double
- double-circle
- dpcm
- dpi
- dppx
- each-line
- ease
- ease-in
- ease-in-out
- ease-out
- ellipse
- ellipsis
- em
- embed
- embossed
- emoji
- end
- <ending-shape>
- e-resize
- ethiopic-numeric
- evenodd
- ew-resize
- ex
- exclude
- exclusion
- expanded
- extends
- extra-condensed
- extra-expanded
- fallback
- fangsong
- fantasy
- farthest-corner
- farthest-side
- fast
- <feature-tag-value>
- female
- fill
- fill-box
- filled
- fine
- first
- first baseline
- fit-content()
- fixed
- <flex>
- flex
- <flex [0,∞]>
- <'flex-basis'>
- flex-end
- <'flex-grow'>
- <'flex-shrink'>
- flex-start
- flip
- flow
- flow-root
- force-end
- forwards
- fr
- from-image
- fr unit
- full-size-kana
- full-width
- generic(fangsong)
- generic(kai)
- generic(nastaliq)
- georgian
- grab
- grabbing
- grad
- grid
- <'grid-template-rows'> / [ auto-flow && dense? ] <'grid-auto-columns'>?
- <'grid-template-rows'> / <'grid-template-columns'>
- groove
- gujarati
- gurmukhi
- handheld
- hanging
- hard-light
- hebrew
- help
- hidden
- high
- high-quality
- hiragana
- hiragana-iroha
- historical-forms
- historical-ligatures
- horizontal-tb
- hover
- hue
- hz
- icon
- in
- infinite
- inherit
- initial
- inline
- inline-block
- inline-flex
- inline-grid
- inline-table
- inset
- [ <integer [-∞,-1]> | <integer [1,∞]> ] && <custom-ident>?
- <integer> && <custom-ident>?
- inter-character
- interlace
- intersect
- inter-word
- invert
- isolate
- isolate-override
- italic
- japanese-formal
- japanese-informal
- jis04
- jis78
- jis83
- jis90
- jump-both
- jump-end
- jump-none
- jump-start
- justify
- justify-all
- kannada
- katakana
- katakana-iroha
- keep-all
- <keyframes-name>
- khmer
- khz
- korean-hangul-formal
- korean-hanja-formal
- korean-hanja-informal
- landscape
- lao
- last
- last baseline
- layout
-
left
- in css-align-3, for justify-content, justify-self, justify-items
- in css-backgrounds-3, for background-position
- in css-break-3, for break-before, break-after
- in css-speech-1, for voice-balance
- in css-text-3, for text-align
- in css-text-decor-3, for text-emphasis-position
- in css-text-decor-3, for text-underline-position
- in css-transforms-1, for transform-origin
- leftwards
- legacy
- <length>
- <length [0,∞]>
- <length-percentage [0,∞]>{2}
- <length-percentage>{2}
- light
- lighten
- lighter
- linear
- linearrgb
- [ <line-names>? <string> <track-size>? <line-names>? ]+ [ / <explicit-track-list> ]?
- line-through
- lining-nums
- list-item
- literal-punctuation
- local
- loose
- loud
- low
- lower-alpha
- lower-armenian
- lowercase
- lower-greek
- lower-latin
- lower-roman
- ltr
- luminance
- luminosity
- malayalam
- male
- mandatory
- manual
- margin-box
- match-parent
- match-source
- math
- max-content
-
medium
- in css-backgrounds-3, for <line-width>, border-width, border-top-width, border-left-width, border-bottom-width, border-right-width, border
- in css-speech-1, for pause-before, pause-after
- in css-speech-1, for rest-before, rest-after
- in css-speech-1, for voice-pitch
- in css-speech-1, for voice-range
- in css-speech-1, for voice-rate
- in css-speech-1, for voice-volume
- menu
- message-box
- min-content
- minmax()
- mixed
- mm
- moderate
- mongolian
- monospace
- move
- ms
- multiply
- myanmar
- ne-resize
- nesw-resize
- neutral
- never
- no-clip
- no-close-quote
- no-common-ligatures
- no-contextual
- no-discretionary-ligatures
- no-drop
- no-historical-ligatures
-
none
- in css-animations-1, for animation-fill-mode
- in css-animations-1, for animation-name
- in css-backgrounds-3, for <line-style>, border-style, border-top-style, border-left-style, border-bottom-style, border-right-style, border
- in css-backgrounds-3, for background-image
- in css-backgrounds-3, for box-shadow
- in css-contain-1, for contain
- in css-display-3, for display, <display-box>
- in css-flexbox-1, for flex
- in css-fonts-4, for font-kerning
- in css-fonts-4, for font-optical-sizing
- in css-fonts-4, for font-size-adjust
- in css-fonts-4, for font-synthesis-position
- in css-fonts-4, for font-synthesis-small-caps
- in css-fonts-4, for font-synthesis-style
- in css-fonts-4, for font-synthesis-weight
- in css-fonts-4, for font-variant
- in css-fonts-4, for font-variant-ligatures
- in css-grid-1, for grid-template
- in css-grid-1, for grid-template-areas
- in css-grid-1, for grid-template-rows, grid-template-columns
- in css-images-3, for image-orientation
- in css-images-3, for object-fit
- in css-multicol-1, for column-span
- in css-scroll-snap-1, for scroll-snap-align
- in css-scroll-snap-1, for scroll-snap-type
- in css-shapes-1, for shape-outside
- in css-speech-1, for pause-before, pause-after
- in css-speech-1, for rest-before, rest-after
- in css-speech-1, for voice-stress
- in css-text-3, for hanging-punctuation
- in css-text-3, for hyphens
- in css-text-3, for text-justify
- in css-text-3, for text-transform
- in css-text-decor-3, for text-decoration-line
- in css-text-decor-3, for text-emphasis-style
- in css-transitions-1, for transition-property
- in css-ui-3, for cursor
- in css-writing-modes-4, for text-combine-upright
- in mediaqueries-4, for @media/hover
- in mediaqueries-4, for @media/overflow-block
- in mediaqueries-4, for @media/overflow-inline
- in mediaqueries-4, for @media/pointer
- in mediaqueries-4, for @media/update
- 'none'::as border style
- nonzero
- no-open-quote
- no-punctuation
- no-repeat
-
normal
- in compositing-1, for <blend-mode>
- in css-align-3, for align-self
- in css-align-3, for justify-content, align-content
- in css-align-3, for justify-self
- in css-align-3, for row-gap, column-gap, gap
- in css-animations-1, for animation-direction
- in css-fonts-4, for font-feature-settings
- in css-fonts-4, for font-kerning
- in css-fonts-4, for font-language override
- in css-fonts-4, for font-palette
- in css-fonts-4, for font-stretch
- in css-fonts-4, for font-style
- in css-fonts-4, for font-variant
- in css-fonts-4, for font-variant-alternates
- in css-fonts-4, for font-variant-caps
- in css-fonts-4, for font-variant-east-asian
- in css-fonts-4, for font-variant-emoji
- in css-fonts-4, for font-variant-ligatures
- in css-fonts-4, for font-variant-numeric
- in css-fonts-4, for font-variant-position
- in css-fonts-4, for font-weight
- in css-scroll-snap-1, for scroll-snap-stop
- in css-speech-1, for speak-as
- in css-speech-1, for voice-rate
- in css-speech-1, for voice-stress
- in css-text-3, for letter-spacing
- in css-text-3, for line-break
- in css-text-3, for overflow-wrap
- in css-text-3, for white-space
- in css-text-3, for word-break
- in css-text-3, for word-spacing
- in css-writing-modes-4, for unicode-bidi
- not
- not-allowed
- nowrap
- n-resize
- ns-resize
- numbers
- numeric
- nw-resize
- nwse-resize
- objectboundingbox
- oblique <angle>?
- oblique <angle [-90deg,90deg]>?
- old
- oldstyle-nums
- only
- open
- open-quote
- optional
- ordinal
- oriya
- ornaments(<feature-value-name>)
- outset
- over
- overlay
- overline
- p3
- padding-box
- page
- paged
- paint
- paused
- pc
- <percentage>
- persian
- petite-caps
- pixelated
- plaintext
- pointer
- portrait
- pre
- pre-line
- preserve
- pre-wrap
- progress
- progressive
- projection
- proportional-nums
- proportional-width
- proximity
- pt
- px
- q
- rad
- rec2020
- recto
- reduced
- region
- rem
- repeat
- repeat-x
- repeat-y
- reverse
- revert
- <rg-ending-shape>
- <rg-size>
- ridge
-
right
- in css-align-3, for justify-content, justify-self, justify-items
- in css-backgrounds-3, for background-position
- in css-break-3, for break-before, break-after
- in css-speech-1, for voice-balance
- in css-text-3, for text-align
- in css-text-decor-3, for text-emphasis-position
- in css-text-decor-3, for text-underline-position
- in css-transforms-1, for transform-origin
- rightwards
- round
- row
- row-resize
- row-reverse
- rtl
- ruby
- ruby-base
- ruby-base-container
- ruby-text
- ruby-text-container
- run-in
- running
- s
- safe
- sans-serif
- saturation
- scale-down
- screen
- scroll
- scroll-position
- self-end
- self-start
- semi-condensed
- semi-expanded
- <semitones>
- se-resize
- serif
- sesame
- sideways
- sideways-lr
- sideways-right
- sideways-rl
- silent
- simp-chinese-formal
- simp-chinese-informal
- simplified
- <size>
- size
- slashed-zero
- slice
- slow
- small-caps
- small-caption
- smooth
- soft
- soft-light
- solid
- space
- space-around
- space-between
- space-evenly
- span && [ <integer [1,∞]> || <custom-ident> ]
- span && [ <integer> || <custom-ident> ]
- speech
- spell-out
- square
- s-resize
- srgb
- stacked-fractions
- start
- status-bar
- step-end
- step-start
- stretch
- strict
- <string>+
- stroke-box
- strong
- styleset(<feature-value-name>#)
- stylistic(<feature-value-name>)
- sub
- subtract
- super
- swap
- swash(<feature-value-name>)
- sw-resize
- symbolic
- system-ui
- table
- table-caption
- table-cell
- table-column
- table-column-group
- table-footer-group
- table-header-group
- table-row
- table-row-group
- tabular-nums
- tamil
- telugu
- text
- thai
- thick
- thin
- tibetan
- titling-caps
- top
- <track-list> | <auto-track-list>
- trad-chinese-formal
- trad-chinese-informal
- traditional
- triangle
- tty
- turn
- tv
- ui-monospace
- ui-rounded
- ui-sans-serif
- ui-serif
- ultra-condensed
- ultra-expanded
- under
- underline
- unicase
- unicode
- unsafe
- unset
- upper-alpha
- upper-armenian
- uppercase
- upper-latin
- upper-roman
- upright
- <url>
- userspaceonuse
- verso
- vertical-lr
- vertical-rl
- vertical-text
- vh
- view-box
- visible
- vmax
- vmin
- vw
- wait
- weak
- words
- wrap
- wrap-reverse
- w-resize
- x
- x-fast
- x-high
- x-loud
- x-low
- x-slow
- x-soft
- x-strong
- x-weak
- y
- young
- zoom-in
- zoom-out
6. 致谢
特别感谢Florian Rivoal创建了§ 3.2.1 实验和不稳定功能建议的初稿。