【问题标题】:CSS style not recognizing numbers [duplicate]CSS样式无法识别数字[重复]
【发布时间】:2012-06-21 10:30:53
【问题描述】:

可能重复:
What characters are valid in CSS class names?

如果假设是这样,请不要这样做,但是当我指定一个类:.3plans 时,它不会应用样式。但是当我将类名更改为 .plans 时,它会识别样式。这是为什么?请注意,.3plans 类是独一无二的,在我的工作表中没有其他样式,因此不能重复。这种现象是常见的 CSS 做法吗? (不要在样式中使用数字)

【问题讨论】:

    标签: css


    【解决方案1】:

    如果class & ID 是从数字开始的,那么css就不能识别。但是你可以这样写.plans3 而不是.3plans

    根据W3c

    在 CSS 中,标识符(包括元素名称、类和 ID) 选择器)只能包含字符 [a-z0-9] 和 ISO 10646 字符 U+00A1 及更高,加上连字符 (-) 和下划线 (_);它们不能以数字或连字符后跟数字开头。 标识符还可以包含转义字符和任何 ISO 10646 字符作为数字代码(见下一项)。例如, 标识符“黑白?”可以写成“B\&W\?”或“B\26 W\3F”。

    查看此讨论以获取更多信息Which characters are valid in CSS class names/selectors?

    【讨论】:

      【解决方案2】:

      这让我困惑了一段时间,直到有人指出这一点。来自 W3C:

      在 CSS2 中,标识符(包括元素名称、类和 ID) 选择器)只能包含字符 [A-Za-z0-9] 和 ISO 10646 字符 161 及更高,加上连字符 (-);他们不能从 连字符或数字。它们还可以包含转义字符和任何 ISO 10646 字符作为数字代码(参见下一项)。例如, 标识符“B&W?”可以写成“B\&W\?”或“B\26 W\3F”。

      【讨论】:

        【解决方案3】:

        基本上名称必须以以下划线 (_)、破折号 (-) 或字母 (a–z) 开头,后跟 数字 的 破折号、下划线字母数字

        现在查看更多信息http://www.w3.org/TR/CSS21/grammar.html#scanner

        【讨论】:

          【解决方案4】:

          类名可以以数字开头,但必须将数字写成转义码:

          .\33plans { ... }
          

          33 是字符3 的十六进制字符代码。

          W3C CSS 验证服务说:

          "在 CSS1 中,类名可以以数字 (".55ft") 开头,除非它 是一个尺寸(“.55in”)。在 CSS2 中,此类类被解析为未知 尺寸(以允许将来添加新单元) "3plans" 一个有效的类,CSS2 要求第一个数字被转义 ".\33plans" [3plans]"

          【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-07-21
          • 2015-07-13
          相关资源
          最近更新 更多