4

如果 CSS 样式表是用 内联定义的<style>,那么为什么用 来引用它们<link>

JavaScript 使用<script>标签来定义内联脚本并使用 引用它们<script src="">,那么为什么不使用<style src="">CSS 呢?是否有<link>标签可以执行的特殊功能不能使用<style>

4

1 回答 1

3

这种不对称的根源在于HTML 处理脚本stylesource资源的方式不同。Javascript 是(惊喜!)一个脚本,而样式表被认为是一种资源。

众所周知,脚本既可以内联编写,也可以从其他页面中获取,两者都具有相同的元素:script. 这就是规范告诉我们它应该如何工作的方式

但也根据规范,样式元素定义了页面的样式,这就是它所能做的一切。它不能像script标签一样引用任何其他文档的样式。为什么?我不能说更多。

另一方面,链接元素资源链接到您的页面,也可以是样式表和其他东西。因此,当您外包样式时,您不使用<style>而是使用<link>它。

确实可以想象能够编写类似<style src=''>设置样式源的东西,但是,唉,该属性不存在。所以我们不能!

现在我明白说“因为规格是这样说的”可能是最令人满意的答案。但这是我现在能为你做的最好的事情。

来源:样式链接的规范。

于 2013-02-20T00:56:32.550 回答