我有这个问题。Chrome继续返回此错误
资源解释为样式表,但以MIME类型text/html传输
受此错误影响的文件只有Style、chosen和jquery-gentleselect(以相同方式导入索引的其他CSS文件工作良好且没有错误)。我已经检查了我的MIME类型和文本/css已经在css上。
老实说,我想从理解问题开始(这似乎是我一个人做不到的事情)。
我有这个问题。Chrome继续返回此错误
资源解释为样式表,但以MIME类型text/html传输
受此错误影响的文件只有Style、chosen和jquery-gentleselect(以相同方式导入索引的其他CSS文件工作良好且没有错误)。我已经检查了我的MIME类型和文本/css已经在css上。
老实说,我想从理解问题开始(这似乎是我一个人做不到的事情)。
当前回答
这是因为您必须将内容类型设置为文本/html而不是文本/css为您的服务器页面(php,node.js等)
其他回答
我想从理解问题开始
浏览器向服务器发出HTTP请求。然后服务器做出一个HTTP响应。
请求和响应都由一堆头部和一个(有时是可选的)包含一些内容的主体组成。
如果有一个主体,那么其中一个头是Content-Type,它描述了主体是什么(它是HTML文档吗?一个图像?表单提交的内容?等等)。
当您请求样式表时,服务器会告诉浏览器这是一个HTML文档(Content-Type: text/ HTML),而不是一个样式表(Content-Type: text/css)。
我已经查过了。Type and text/css已经在css上了。
那么,您的服务器的其他部分使样式表具有错误的内容类型。
使用浏览器开发人员工具的Net选项卡检查请求和响应。
我在MVC4中使用表单身份验证时遇到了类似的问题。问题出在web。config中的这一行,
<modules runAllManagedModulesForAllRequests="true">
这意味着每个请求,包括静态内容的请求,都要经过身份验证。
将这一行更改为:
<modules runAllManagedModulesForAllRequests="false">
我也有这个错误的问题,并想出了一个解决方案。这并没有解释错误发生的原因,但似乎在某些情况下修复了它。
在css文件的路径前加上一个正斜杠/,如下所示:
<link rel=“stylesheet” href=“/css/bootstrap.min.css”>
如果您使用的是JSP,则此问题可能来自您的servlet映射。 如果你的映射默认使用url,就像这样:
@WebServlet("/")
然后容器解释CSS url,并转到servlet,而不是转到CSS文件。
我有同样的问题,我改变了我的映射,现在一切正常
我最近在chrome浏览器上也遇到了这个问题。我只是给我的CSS文件解决问题的绝对路径。
<link rel="stylesheet" href="<?=SS_URL?>arica/style.css" type="text/css" />