<link>标记中是否需要type ="text/css"?

pim*_*vdb 185 html css stylesheet

我想知道是否有必要使用<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">元素,是有必要包括它?

Tom*_*len 144

它不是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

类型代表样式表的MIME类型.我见过的唯一支持的值是Text/CSS,这可能就是HTML5放弃它的原因.我想他们已经将它用于早期版本,以允许未来发生的扩展可能性.

使用HTML5并且没有指定类型,即使在测试旧版本的IE时,我已经运行到目前为止兼容性没有问题.

  • HTML4规范中可能需要它,但没有浏览器实际执行它. (23认同)
  • 好吧,有一种类型的"图像/ ico" (4认同)
  • 实际上,HTML4.01规范似乎不需要`type`属性。 (2认同)

ale*_*ler 29

这不是必需的,没有.

您感兴趣的HTML Living Standard的一部分是The linkelement,它指出:

link元件必须具有一个rel属性或itemprop属性,但不能同时使用.

type属性提供链接资源的MIME类型.这纯粹是建议性的.该值必须是有效的MIME类型字符串.

对于外部资源链接,该type属性用作用户代理的提示...

  • @ScottyBlades 好问题!用户代理是任何可以代表用户下载(在本例中)HTML 的东西。大多数时候它是一个网络浏览器,但也可能是一个终端客户端,比如curl。 (2认同)

GSh*_*gan 5

我的理解是它允许以 text/css 以外的格式指定样式表。

虽然这已成为 (X)HTML 文档样式表的主要(和标准)交付格式,但该规范实际上足够广泛以允许传递各种不同的 MIME 类型,只是标准浏览器没有实现它们。


use*_*450 5

HTML4.01不需要标签type上的属性<link>。根据规范,该type属性是浏览器的提示。如果浏览器不支持提示的内容类型,则可以跳过获取。

类型=内容类型[CI]

此属性提供有关链接目标地址上可用内容的内容类型的建议性提示。如果建议用户代理将获得不支持的内容类型的内容,则它允许用户代理选择使用后备机制而不是获取内容。

使用此属性的作者负责管理可能与链接目标地址的可用内容不一致的风险。

  • 注意:<link>遵循<a>type属性定义。