<custom-ident>
语法
转义字符
任何 Unicode 代码点都可以作为 <custom-ident>
或带引号的 <string>
的一部分进行转义。
在 CSS 中,有几种方法可以转义字符。转义序列以反斜杠 (\
) 开头,并以以下内容结尾
- 一个到六个十六进制数字 (
ABCDEF0123456789
)。十六进制数字之后可以可选地跟上空格。十六进制转义序列将被替换为其值由这些数字给定的 Unicode 代码点。空格允许这些序列后面跟着实际的十六进制数字(而不是被替换的十六进制数字)。 - 任何不是十六进制数字或换行符的 Unicode 代码点。
示例
- "&B" 可以写成
\26 B
或\000026B
。 - "hi.there" 可以写成
hi\.there
或hi\002Ethere
。 - "toto?" 可以写成
toto\?
、toto\3F
或toto\00003F
。
要在转义序列之后包含实际的空格,请在转义序列中包含两个空格。
禁止的值
<custom-ident>
不得放在单引号或双引号之间,因为这将与 <string>
相同。此外,第一个字符不能是十进制数字,也不能是连字符 (-
) 后跟十进制数字。
为了防止歧义,每个使用 <custom-ident>
的属性都禁止使用特定值
animation-name
-
禁止使用全局 CSS 值 (
unset
、initial
和inherit
),以及none
。 counter-reset
、counter-increment
-
禁止使用全局 CSS 值 (
unset
、initial
和inherit
),以及none
。 @counter-style
、list-style-type
-
禁止使用全局 CSS 值 (
unset
、initial
和inherit
),以及以下值none
inline
outside
此外,不同的浏览器还实现了一些预定义的值
disc
circle
square
decimal
cjk-decimal
decimal-leading-zero
lower-roman
upper-roman
lower-greek
lower-alpha
lower-latin
upper-alpha
upper-latin
arabic-indic
armenian
bengali
cambodian
cjk-earthly-branch
cjk-heavenly-stem
cjk-ideographic
devanagari
ethiopic-numeric
georgian
古吉拉特语
旁遮普语
希伯来语
平假名
平假名いろは
日语正式
日语非正式
卡纳达语
片假名
片假名いろは
高棉语
韩语韩文正式
韩语汉字正式
韩语汉字非正式
老挝语
亚美尼亚语(西)
马拉雅拉姆语
蒙古语
缅甸语
奥里亚语
波斯语
简体中文正式
简体中文非正式
泰米尔语
泰卢固语
泰语
藏语
繁体中文正式
繁体中文非正式
亚美尼亚语(东)
公开披露
关闭披露
grid-row-start
,grid-row-end
,grid-column-start
,grid-column-end
-
禁止使用
span
值。 view-transition-name
-
禁止使用全局 CSS 值 (
unset
、initial
和inherit
),以及none
。 will-change
-
禁止使用全局 CSS 值 (
unset
、initial
和inherit
),以及值will-change
、auto
、scroll-position
和contents
。
示例
有效标识符
nono79 A mix of alphanumeric characters and numbers ground-level A mix of alphanumeric characters and a dash -test A dash followed by alphanumeric characters _internal An underscore followed by alphanumeric characters \22 toto A Unicode character followed by a sequence of alphanumeric characters bili\.bob A correctly escaped period
无效标识符
34rem It must not start with a decimal digit. -12rad It must not start with a dash followed by a decimal digit. bili.bob Only alphanumeric characters, _, and - needn't be escaped. 'bilibob' This would be a <string>. "bilibob" This would be a <string>.
规范
规范 |
---|
CSS 值和单位模块级别 4 # custom-idents |
CSS 将更改模块级别 1 # valdef-will-change-custom-ident |
CSS 计数器样式级别 3 # typedef-counter-style-name |
CSS 列表和计数器模块级别 3 # counter-properties |
浏览器兼容性
由于此类型不是真正的类型,而是一个方便类型,用于简化允许值的描述,因此没有浏览器兼容性信息。