IE9忽略某些页面的CSS?

Ala*_*lan 7 css cross-browser internet-explorer-9

我有不同的网站服务,基本上运行相同的代码.一个页面呈现正确,而另一个页面似乎没有可用的CSS.

当我为破损页面调出IE9开发人员控制台时,我看到:

SEC7113: CSS was ignored due to mime type mismatch

这就解释了为什么页面呈现不正确,但问题是,为什么我在一个页面上看到该错误,而不是另一个页面?

使用fiddler,同一个CSS被提供给两个站点,并且两个站点都有一个metatag:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8"/>

我知道IE9仍处于测试阶段,但我想弄清楚为什么这是我网站的问题.

Mik*_*tly 12

这看起来不像是IE仿真的东西 - 听起来响应中的CONTENT-TYPE不是"text/css".看起来IE9强制要求包含CSS的文件实际上标记为这样.

只是出于兴趣,CSS页面是以任何方式处理的吗?即它们是否由ASPX页面呈现以允许您注入CSS?如果是这种情况,那么您可能需要确保顶部的页面声明包含ContentType声明,例如:

<%@ Page Language="C#" ContentType="text/css" %>
Run Code Online (Sandbox Code Playgroud)


Ala*_*lan 5

事实证明,IE9将忽略"受信任区域"中所有站点的缺失内容类型.

如果缺少内容类型标头,受信任区域之外的站点将不会呈现css.

  • 对于标准模式页面使用的任何样式表,IE9都需要text/CSS MIME类型.如果响应具有X-Content-Type-Options:nosniff标头,则IE9要求任何模式页面使用的任何样式表都有文本/ CSS MIME类型.除非原始页面位于受信任区域,否则IE9对任何跨域样式表都需要text/CSS MIME类型. (5认同)