2014-07-12 31 views
2

以下标记是否有效?它是有效的CSS规则在风格属性?

<!DOCTYPE html> 
<html> 
    <head> 
     <title>Test whether at-rules are valid in style attributes</title> 
    </head> 
    <body style="@import url(style.css);"></body> 
</html> 

Firefox和Linux上的Chromium不会显示它,但W3C验证程序并未将其标记为错误。

+1

你不能导入内联样式。 – davidkonrad

+1

W3C HTML验证器不验证CSS。这是无效的:http://dev.w3.org/csswg/css-style-attr/#syntax – Blender

+1

如果它不起作用,谁在乎它是否有效? – JJJ

回答

2

只有declaration可以放置在风格属性的内部。

HTML 4.01 specification

风格属性的值的语法由默认的样式表语言来确定。例如,对于[[CSS2]]内联样式,请使用4.1.8节中所述的声明块语法(不带大括号分隔符)。

+0

更新的引用(与原理相同):W3C推荐[CSS Style Attributes](http://www.w3.org/TR/css-style-attr/) –

1

它不是。

@ - 规则不能直接包含规则,而只能包含选择器。

  • @import导入文件,但他们不能在选择器之外有规则。
  • @media只能包含选择器。
  • @font-face不影响元素。

style属性是为制定规则直接到元素,所以显然是@ -rules不适合那个。

+0

这样做很有意义。谢谢 – steve