【问题标题】:What are valid CSS id selector value in HTML5? [duplicate]HTML5 中有效的 CSS id 选择器值是什么? [复制]
【发布时间】:2021-07-09 03:02:24
【问题描述】:

根据specs,我已满足所有条件,但 CSS 仍然不适用。

id 属性指定其元素的唯一标识符 (ID)。该值在元素的主子树中的所有 ID 中必须是唯一的,并且必须包含至少一个字符。该值不得包含任何空格字符。

那么HTML5 中有效的id 值是什么?

#123123c{
  color: red;
}
<div id="123123c"> Hello DEVELOPERS solve this problem </div>

【问题讨论】:

标签: javascript html css


【解决方案1】:

让我帮你拿。如果有人可能会在这个问题上卡住

这是因为即使 HTML5 很乐意 ID 以数字开头,但 CSS 却不是。 CSS 根本不允许选择器以数字开头。规范的相关部分指出:

在 CSS 中,标识符(包括选择器中的元素名称、类和 ID)只能包含字符 [a-zA-Z0-9] 和 ISO 10646 字符 U+00A0 及更高,加上连字符 (-) 和下划线(_);它们不能以数字、两个连字符或一个连字符后跟一个数字开头。标识符还可以包含转义字符和任何 ISO 10646 字符作为数字代码(请参阅下一项)。

W3C 规范。

但是,您可以使用属性选择器轻松解决此问题:

[id="123123c"] {
  color: red;
}
<div id="123123c"> Hello DEVELOPERS solve this problem </div>

【讨论】:

    【解决方案2】:

    id 选择器不能以数字开头...它必须以字母或下划线(_)开头

    <!DOCTYPE html>
    <html>
    <head>
    <style>
    #_123123c {
      color: red;
    }
    </style>
    </head>
    <body>
    <div id="_123123c"> Hello DEVELOPERS solve this problem </div>
    </body>
    </html>
     

    【讨论】:

      猜你喜欢
      • 2011-05-26
      • 2018-12-26
      • 2013-11-19
      • 2015-03-11
      • 1970-01-01
      • 2016-11-20
      • 2011-12-05
      • 2017-02-11
      • 2016-05-06
      相关资源
      最近更新 更多