【问题标题】:Stuck with IE compatibility mode卡在 IE 兼容模式下
【发布时间】:2023-03-24 03:06:02
【问题描述】:

我正在处理的网站的 URL 最终出现在 Microsoft 兼容性列表中。这意味着每次 IE 用户访问它时,都会强制使用 IE9 模式,这使得无法使用现代 CSS 或 Javascript。

网站上每个 HTML 文档的前 6 行如下所示。没有条件 cmets。我还尝试将<title> 标题紧跟在<head> 之后,但没有成功。

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta charset="utf-8">
        <title>...</title>

响应 HTTP 标头始终包含

X-UA-Compatible     IE=Edge

但它似乎没有任何区别。唯一强制 IE 关闭 IE9 模式的是设置对话框中的此复选框。只有取消设置时,站点才会以 Edge 模式显示。

另外,我最近发现微软的 iecompatdata.xml 在站点条目旁边包含featureSwitch="overrideXUACompatible:false" 属性。

还有什么我可以尝试阻止我的网站以 IE 兼容模式显示的吗?

【问题讨论】:

  • 您目前如何实现 X-UA-Compatible 响应标头? PHP|htaccess?我能想到的另一个选择是在服务器端使用浏览器版本而不是“edge”。反正我就是这么做的。
  • 使用这个: 参考:stackoverflow.com/questions/8650557/…

标签: internet-explorer http-headers x-ua-compatible compatibility-mode


【解决方案1】:

如果该网站在 Microsoft 的兼容性视图列表中,您需要让他们将其删除。

根据this page,您需要发送电子邮件至 iepo@microsoft.com 并提供以下信息,并要求将您的网站从列表中删除:

  • 所有者名称
  • 公司名称
  • 电子邮件地址
  • 电话号码
  • 公司名称
  • 街道地址
  • 网站地址

【讨论】:

    【解决方案2】:

    改为将其作为标题发送。在解释元标记时,可能已经做出决定;标题不是这种情况。

    更多详情和说明请访问this other SO post's answer。

    【讨论】:

    • 哦。对不起;我真的希望这对你有用。
    • 我怀疑兼容性列表 XML 文件中的 overrideXUACompatible 属性可能与它有关
    【解决方案3】:

    你可能已经看过了…… Force IE compatibility mode off using tags

    这个回复可能特别有趣...

    “我发现如果用户(或系统管理员)通过转到工具->兼容性视图设置并选中在兼容性视图中显示所有网站默认打开兼容模式,这将不起作用。修复问题,我必须在 HTTP 响应中返回标头:X-UA-Compatible: IE=edge" – speedplane 2013 年 4 月 19 日 11:29

    还有... “对于那些找到这个答案但无法让它为他们工作的人的忠告。兼容性元标记必须是第一个元标记,并且在标记之前不能有 IE 条件语句。”更多:tesmond.blogspot.com/2011/10/... – Chris Sobolewski

    你的元是页面上的第一个吗?

    【讨论】:

    • IE 中没有这样的复选框。至少在 IE11 中没有
    • 在它或 IE 条件句之前是否还有其他元标记?
    • 没有:
    猜你喜欢
    • 2013-05-13
    • 1970-01-01
    • 2014-08-01
    • 1970-01-01
    • 2011-10-02
    • 1970-01-01
    • 2014-05-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多