【发布时间】:2011-09-27 19:28:46
【问题描述】:
它说here 它不在 HTML4 中,尽管我真的看不出在文本中的哪个位置。 据我所知,基于this,在 HTML5 中这样做是可以的,但我不完全确定(假设样式是 HTML 元素?)
我正在使用它来轮换样式表并希望它根据 HTML5 规范尽可能有效,所以想知道是否应该用 data-* 元素重写它。
【问题讨论】:
标签: validation html
它说here 它不在 HTML4 中,尽管我真的看不出在文本中的哪个位置。 据我所知,基于this,在 HTML5 中这样做是可以的,但我不完全确定(假设样式是 HTML 元素?)
我正在使用它来轮换样式表并希望它根据 HTML5 规范尽可能有效,所以想知道是否应该用 data-* 元素重写它。
【问题讨论】:
标签: validation html
+1 有趣的问题!
您应该考虑将 (link) 链接到您的样式表,然后通过引用 id 或 class 将它们切换出来,而不是使用 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>
【讨论】:
我刚刚将以下代码放入 W3C 验证器,它没有错误:)
<!DOCTYPE html>
<html>
<head>
<title>Title</title>
<style id="test"></style>
</head>
<body>
Test body
</body>
</html>
我认为W3C Validator 是这类事情的好资源,它被标记为实验性的,但那是因为标准尚未最终确定。
【讨论】:
它在 HTML4 中无效(根据规范)并且 data-* 属性也不是。也就是说,如果您使用这些属性,文档将不会根据 Doctype 规范进行验证。
无论文档是否验证,浏览器都会忽略它们无法识别的元素。
样式标签与任何其他标签一样是 DOM 元素,因此您可以添加任何您想要的属性。
【讨论】: