You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CSS语法规范中<any-value>的自定义语法解读是否正确?

关于CSS <any-value> 语法的解读疑问

请问<any-value>可以是什么?

根据CSS语法规范:

<declaration-value>生成式匹配一个或多个令牌的任意序列,只要该序列不包含<bad-string-token>、<bad-url-token>、未匹配的*<)-token>、<]-token>或<}-token>,也不包含顶级的<semicolon-token>令牌或值为!的<delim-token>*令牌。它表示有效声明可以拥有的完整值内容。

*<any-value>生成式与<declaration-value>完全相同,但还允许顶级的<semicolon-token>令牌和值为!的<delim-token>*令牌。它表示任意上下文中有效CSS的完整内容。

基于此以及令牌化章节中定义的令牌列表,我整理出如下语法(忽略空格):

function-token = ident-token '(' any-value ')'  # 与规范不同
delim-token = <无法解析为其他令牌的任意内容>
any-value = (
    ident-token | function-token | at-keyword-token | hash-token |
    string-token | url-token | delim-token | number-token |
    percentage-token | dimension-token | unicode-range-token |
    '<!--' | '-->' | ':' | ';' | ',' |
    '(' any-value ')' | '[' any-value ']' | '{' any-value '}'
)*

如你所见,我要求括号必须匹配。如规范所述,*<declaration-value>*不能包含未匹配的闭合括号,但不确定是否允许未匹配的开括号。请问我的解读是否正确?若不正确,问题出在哪里?


内容的提问来源于stack exchange,提问作者InSync

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 01:42:41