“–”是有效的CSS3标识符吗?

根据 CSS 级别 3规范,要解析标识符的开头,您:

检查三个代码点是否会开始一个标识符

看第一个代码点:

  • 如果第一个字符是-,那么我们有一个有效的标识符,如果:
    1. 第二个代码点是标识符起始代码点([a-zA-Z_]或非 ASCII)。
    2. 第二个代码点是-.
    3. 第二个和第三个字符构成一个有效的转义符。

否则,我们没有有效的标识符开始。在确定我们是否有一个有效的标识符开始后,唯一有效的要求<ident-token>是我们有 0 个或多个以下任意组合:

  1. 转义令牌
  2. ASCII 字母
  3. 数字
  4. _ 或者 -
  5. 非 ASCII 字符

由于我们不需要标识符开始标记后面的任何字符,这表明这--是一个有效的标识符,即使任何浏览器或框架都不支持。然而,即使是官方的 CSS 验证服务(由设计 CSS 规范的人员维护)也不认为这是一个有效的标识符。这仅仅是验证服务中的错误吗?

回答

是的,它有效并且有效。这是您可以定义的最短自定义属性(又名 CSS 变量):

body {
 --:red;
 background:var(--);
}

相关:css 变量名可以以数字开头吗?

  • @RobinBastiaan they aren't bugged but they are rarely updated to consider new stuff. A lot of valid *new* things will fail in the validator. What I am showing is perfectly valid and you can use it with no issue (even if not recommended as a good practise)

以上是“–”是有效的CSS3标识符吗?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>