我想知道是否有必要使用<link rel="stylesheet" type="text/css" href=...>
而不是<link rel="stylesheet" href=...>
。 rel="stylesheet"
标记了它是样式表的信息 - 因此text/css
实际上并没有添加任何内容。
HTML使用的唯一样式表格式是CSS,那么text/css
对浏览器说什么呢?有些网站似乎添加了type="text/css"
属性(http://www.jquery.com/),而其他网站则没有(http://www.youtube.com/)。
那么,type="text/css"
元素中<link rel="stylesheet">
的用途是什么,是否有必要包含它?
答案 0 :(得分:142)
HTML5规范不需要它,但对于旧版本的HTML,它是必需的。
Html 4 W3.org规范
http://www.w3.org/TR/html40/struct/links.html#edef-LINK http://www.w3.org/TR/html40/present/styles.html
Type代表样式表的MIME类型。我见过的唯一支持的值是Text / CSS,这可能就是HTML5放弃它的原因。我想他们在早期版本中有它,以允许未来发生的扩展可能性。
使用HTML5并且没有指定类型,即使在测试旧版本的IE时,我也没有遇到兼容性问题。
答案 1 :(得分:29)
这不是必需的,没有。
您感兴趣的HTML Living Standard部分是The link
element,其中声明:
link
元素必须具有rel
属性或itemprop
属性,但不能同时具有这两个属性。
type
属性提供链接资源的MIME类型。这纯粹是建议性的。该值必须是有效的MIME类型字符串。对于外部资源链接,
type
属性用作用户代理的提示......
答案 2 :(得分:4)
我的理解是允许以text / css以外的格式指定样式表。
虽然这已经成为(X)HTML文档样式表的主要(和标准)传递格式,但规范实际上足够广泛,允许传递各种不同的MIME类型,只是标准浏览器没有实施它们。
答案 3 :(得分:3)
HTML4.01不需要type
标记上的<link>
属性。根据规范,type
属性是对浏览器的提示。如果浏览器不支持提示的内容类型,则可以跳过提取它。
type = content-type [CI]
此属性提供有关链接目标地址可用内容的内容类型的建议提示。它允许用户代理选择使用回退机制而不是获取内容,如果他们被告知他们将获得他们不支持的内容类型的内容。
使用此属性的作者负责管理可能与链接目标地址可用内容不一致的风险。
<link>
遵循<a>
属性type
的定义。答案 4 :(得分:1)
与大多数人不相关,但某些系统(至少Microsoft SharePoint 2013)在计算如何处理HTML时会使用此类型属性(例如,在创建.master页面文件时)。
答案 5 :(得分:0)
不,它仅代表MIME类型,它已在HTML中弃用,我们可以在没有任何浏览器兼容性的情况下删除它。