在HTML头标记中包含两个<style>
标记是否有效?
例如,我正在尝试为没有添加外部样式表的电子邮件客户端编写HTML页面。由于我们的模板系统的工作方式,我们更容易
<head>
<style>
.someStyle{}
</style>
<style>
.someOtherStyle{}
</style>
</head>
而不是......
<head>
<style>
.someStyle{}
.someOtherStyle{}
</style>
</head>
如果选项2是执行此操作的唯一方法,我会这样做,但选项1由于各种原因更适合我们的框架代码。
答案 0 :(得分:9)
在<head>
和</head>
标记之间添加多个样式元素是完全正常的。
您可以拥有任意数量的<link>
或<script>
元素。
答案 1 :(得分:4)
是的,这完全有效。 CSS代表“级联样式表”(如同在彼此之上分层。)多个<style>
标签允许您包含多个样式表或多个样式声明。
答案 2 :(得分:3)
没有一个答案引用任何来源,因此OP无法确定。 (请注意,“CSS”的“级联”部分和浏览器都不能容忍许多STYLE
元素的事实证明了这一点;例如,他们容忍{感谢上帝,BTW!)STYLE
元素{{1除非使用了BODY
attr。,否则它被认为是异端,除非使用了scoped
attr。这反过来基本上不被浏览器支持,尽管它是有效的......)
以下是the current HTML spec今天所说的内容(2017-02-08):
可以使用此元素的上下文:
- 如果缺少scoped属性:需要元数据内容。
- 如果缺少scoped属性:在作为head元素的子元素的noscript元素中。
- 如果存在scoped属性:其中包含流内容,但在除其他样式之外的任何其他流内容之前 元素和元素间空白。
这实际上意味着原始问题的答案确实是:是。 :)