什么是<link />标记的默认MIME类型?

时间:2013-11-23 13:32:28

标签: html apache http mime-types

当您设置link标记时,如下所示:

<link rel="stylesheet" href="style/global.css">
<link rel="shortcut icon" href="favicon.ico">

由于其rel属性没有任何自定义httpd.conf设置,它是否会获得默认的MIME类型(即stylesheet链接关系提示它&sa; text/css文件)?

如果是,那么&#34;默认&#34; stylesheetalternateshortcut icon的MIME类型?

4 个答案:

答案 0 :(得分:2)

对于HTML5:

通常,type attribute提供MIME类型。但是外部资源链接类型(可以使用rel属性指定)可以定义默认MIME类型,如果未明确指定MIME类型,则使用该类型:

  

如果没有类型元数据,但外部资源链接类型定义了默认类型,则用户代理必须假定该资源属于该类型。

stylesheet link type就是这种情况,其默认MIME类型为text/css

  

stylesheet关键字提供的资源的默认类型为text/css

icon link type没有默认类型(但必须假设为image/):

  

icon关键字提供的资源没有默认类型。但是,为了确定资源的类型,用户代理必须期望资源是图像。

alternate link type不能使用默认的MIME类型,因为它是hyperlink链接类型,而不是external resource链接类型。

答案 1 :(得分:0)

rel指定文档与网页的关系,不会影响MIME类型。

href是要加载的源文件,MIME类型是根据您的Web服务器设置确定的(例如,我的Apache 2服务器将* .php文件与application/x-httpd-php类型相关联但是未配置的服务器将其视为默认MIME类型(通常为text/plain)。

type将覆盖服务器从href上的诊断返回的任何内容,并手动设置(不是必填字段)。

对于<script>资源,会发生相同的过程,但现代浏览器已弃用typelanguage字段,除非出现特殊情况(例如使用VBScript而不是Javascript - 无论谁是地狱那样做了。)

编辑:

要解决您的上一条评论 - 除非您在apache2.conf(或httpd.conf /其他.conf文件)中指定,否则Apache不会默认为八位字节流。默认情况下,唯一的原因是,如果您主要提供二进制文件,并希望避免浏览器在浏览时将浏览器解析为纯文本。

答案 2 :(得分:0)

采用Windows提供的示例:

    <LINK REL = "stylesheet"
TYPE = "<code><b class="cfe">mime/type</b></mark>"
HREF = "<code><b class="cfe">url</b></mark>"> 

其中值REL =“stylesheet”表示目标源是样式表,mime / type是样式表的MIME类型,url是样式表文件的地址。

每个样式表都有自己的MIME类型,层叠样式表(CSS)的默认MIME类型为 text / css

在您的网站上添加图标时,您可以在网页中添加这样的内容

<link rel="shortcut icon" type="image/vnd.Microsoft.icon" href="/some-folder/some-image.ico">

“href”只是您存储图标的Web服务器上的位置。例如,如果您的favicon存储在images文件夹中并且名为“ favicon-logo.ico。”,则可以键入“ /images/favicon-logo.ico ”。

还有一些“非官方MIME类型”: 虽然非官方MIME类型适用于大多数Web浏览器,但它们不适用于Internet Explorer。因此,如果您希望所有访问者都能查看favicon,请避免使用以下MIME类型:“image / png”,“image / gif”,“image / jpeg”,或任何其他变体。

答案 3 :(得分:0)

MDN文档说:

  

<强>相对
  此属性将链接文档的关系命名为当前文档。该属性必须是以空格分隔的链接类型值列表。 此属性的最常见用法是指定外部样式表的链接:rel属性设置为样式表,href属性设置为外部样式表的URL以格式化页面。 WebTV还支持使用rel的下一个值来预加载文档系列中的下一页。

这不告诉ref属性的默认值。但是:rel命名链接文档与当前文档的关系,因此必须将此属性设置为所需的关系stylesheet,以告知浏览器从此链接解释的内容。

新的HTML5文档类型使script代码type属性变得多余。因此,如果您使用的是HTML5 Doctype,则只能在html中使用<script>...</script>(对于内联脚本)或<script src="<SOURCE>">...</script>(对于包含),否则请添加type属性。