如果CSS样式表与<style>
内联定义,那么为什么它们会引用<link>
?
JavaScript使用<script>
标记定义内联脚本并使用<script src="">
引用它们,那么为什么不将<style src="">
用于CSS?是否有<link>
标记可以使用<style>
执行的特殊功能吗?
答案 0 :(得分:3)
style
和source
之间的这种不对称的根源来自HTML处理脚本和资源的方式的差异。 Javascript是(惊喜!)一个脚本,而样式表被认为是一种资源。
正如我们所知,脚本既可以内联编写,也可以从其他页面中获取,两者都使用相同的元素:script
。这就是the specs tells us it should work。
但是根据规范,style元素定义了页面的样式,这就是它所能做的一切。它无法引用script
标记之类的任何其他文档的样式。为什么?我不能多说。
另一方面,链接元素链接资源到您的页面,也可以是样式表和其他内容。因此,当您外包样式时,不要使用<style>
,而应使用<link>
。
确实可以想象能够编写类似<style src=''>
的内容来设置样式的来源,但是,唉,该属性不存在。所以我们不能!
现在我明白说“因为规格这么说”可能是最令人满意的答案。但这是我现在能做的最好的事情。