【问题标题】:Is it valid to give a style element an ID?给样式元素一个ID是否有效?
【发布时间】:2011-09-27 19:28:46
【问题描述】:

它说here 它不在 HTML4 中,尽管我真的看不出在文本中的哪个位置。 据我所知,基于this,在 HTML5 中这样做是可以的,但我不完全确定(假设样式是 HTML 元素?)

我正在使用它来轮换样式表并希望它根据 HTML5 规范尽可能有效,所以想知道是否应该用 data-* 元素重写它。

【问题讨论】:

    标签: validation html


    【解决方案1】:

    +1 有趣的问题!

    您应该考虑将 (link) 链接到您的样式表,然后通过引用 idclass 将它们切换出来,而不是使用 style 块。


    也就是说,title 对于 HTML5 中的 style 标记是完全可以接受的。您可以将其用作样式表切换的钩子。

    http://www.w3.org/TR/html5/semantics.html#the-style-element

    仅供参考...这验证了

    <!DOCTYPE html>
    <html>
      <head>
        <title>Title</title>
        <style title="whatever"></style>
      </head>
      <body>
        Test body
      </body>
    </html>
    

    http://validator.w3.org/#validate_by_input+with_options

    【讨论】:

    • 你知道吗,我是个白痴。我使用的是链接标签,即使在 4.01 以下,ID 也对它们有效,所以.. 没有实际意义
    • 好吧,至少我们现在知道@Damon ;-) Thx
    【解决方案2】:

    我刚刚将以下代码放入 W3C 验证器,它没有错误:)

    <!DOCTYPE html>
    <html>
      <head>
        <title>Title</title>
        <style id="test"></style>
      </head>
      <body>
        Test body
      </body>
    </html>
    

    我认为W3C Validator 是这类事情的好资源,它被标记为实验性的,但那是因为标准尚未最终确定。

    【讨论】:

    • 您已针对 HTML5 进行了验证。问题是关于 HTML4。
    • 实际上,OP 说我希望它尽可能符合 HTML5 规范
    【解决方案3】:

    它在 HTML4 中无效(根据规范)并且 data-* 属性也不是。也就是说,如果您使用这些属性,文档将不会根据 Doctype 规范进行验证。

    无论文档是否验证,浏览器都会忽略它们无法识别的元素。

    样式标签与任何其他标签一样是 DOM 元素,因此您可以添加任何您想要的属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-05-28
      • 2023-02-15
      • 2022-10-30
      • 2011-03-16
      • 2019-01-16
      • 1970-01-01
      • 2017-03-13
      相关资源
      最近更新 更多