MIME TYPE:链接到带有txt扩展名的CSS

vol*_*ron 2 html css mime

<link type="text/css" media="all" rel="stylesheet" href="./foo.css.txt" />
Run Code Online (Sandbox Code Playgroud)


Firbug错误


未加载样式表foo.css.txt,因为其MIME类型"text/plain"不是"text/css".


说明


浏览器将CSS解释为文本文档而不是CSS,尽管有任何努力通过浏览器强制它的MIME.当然,在生产中我将使用foo.css(没有txt扩展名),但我认为这是可能的.它适用于JavaScript:

<script type="text/javascript" src="./index.js.txt"></script> 
Run Code Online (Sandbox Code Playgroud)


其他想法


  • 设置type="css"不显示在Firebug的错误和页面验证,但是CSS不正确加载-我敢肯定,这不是一个有效的MIME类型,但.我试图在W3C上找到一个MIME类型列表,但与所有内容一样,很难找到/理解W3C

  • 这适用于其他不太流行的扩展,例如dat: href="./foo.css.dat"

Que*_*tin 6

当您type在HTML中使用该属性时,您会说"当您获取此资源时,期望获得此类数据." 这允许用户代理(例如浏览器)避免请求他们知道无法处理的资源.对于CSS,您需要将其设置为text/css.

当服务器响应请求时,HTTP Content-Type标头显示"此内容属于此类型".它是规范的,也必须设置text/css为CSS数据.

因为您使用了.txt文件,所以服务器(在默认配置中)表示该文件包含的数据是text/plain告诉浏览器的.您无法从浏览器覆盖此内容.

它适用于JavaScript

由于各种原因,浏览器倾向于忽略服务器为JavaScript指定的Content-Type.这可能被视为这些浏览器中的错误.

设置type ="css"在Firebug中没有显示错误并且页面有效,但CSS没有正确加载 - 我很确定它不是有效的MIME类型

css 不是注册的MIME类型,浏览器不会将其识别为它可以理解的样式表语言,因此它不会尝试下载它.

我试图在W3C上找到一个MIME类型列表,但与所有内容一样,很难找到/理解W3C

W3C不对MIME类型注册表负责,您可以在http://www.iana.org/assignments/media-types/找到它.