【问题标题】:Internet Explorer 8 EmulateIE7 Mode not workingInternet Explorer 8 EmulateIE7 模式不起作用
【发布时间】:2009-06-11 13:53:35
【问题描述】:

我已设置 IIS6 以发送以下标头

自定义标头名称:兼容 X-UA
自定义标头值:IE=EmulateIE7

应该强制 IE 8 进入 IE 7 兼容模式。您可以在MSDN 上阅读更多相关信息。

通过查看开发人员工具栏,我注意到如果我定义了 DTD,则文档模式正确设置为 IE 7,但浏览器模式为 IE 8。如果页面没有 DTD,则文档模式得到IE 8 再次设置为 Quirks 和浏览器模式。

我是不是做错了什么。如何强制 IE 8 设置 IE 7 浏览器模式。

谢谢

【问题讨论】:

    标签: internet-explorer iis iis-6 internet-explorer-8


    【解决方案1】:

    我已使用此元标记强制 IE7 模式:

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

    重要提示:您必须将其放在&lt;head&gt; 中的任何其他标签之前!

    (其实你可能可以在这之前放一个&lt;title&gt;,但不放任何东西比具体情况更容易记住)

    【讨论】:

    • OP 使用的 IIS 设置会自动添加此标头,因此您无需在页面中包含元标记。
    • 请注意,您也可以使用元标记覆盖 IIS 设置。
    • 我知道这是一篇旧帖子,但你注意到这个标签必须是&lt;head&gt; 部分中的第一个标签救了我!谢谢!
    【解决方案2】:

    浏览器模式是指浏览器发送的用户代理头。由于在包含 EmulateIE7 指令的 HTTP 响应返回之前已经发送了 UA,因此更改浏览器模式为时已晚;仅更改了文档模式。

    http://msdn.microsoft.com/en-us/library/dd565628(VS.85).aspx#bdmodes

    【讨论】:

      【解决方案3】:

      查看此链接

      http://ilia.ws/archives/196-IE8-X-UA-Compatible-Rant.html

      需要添加链接中描述的自定义标题。使用过渡性 DTD 时仍在寻找非标头解决方案。

      【讨论】:

      【解决方案4】:

      我认为这是按设计工作的。我一直在使用该标头值,没有任何问题。

      您的页面是否存在渲染问题?您可以尝试改用 IE=IE7。

      【讨论】:

        【解决方案5】:

        找到了这个解决方案...希望它有效!

        注意:您必须在任何 html 发送到浏览器之前放置“标题”行 (http://www.php.net/header)

        是PHP代码,行应该是这样的:

        header('X-UA-Compatible: IE=7');

        【讨论】:

          【解决方案6】:

          如果您过于密切地遵循该指南,您将错过这样一个事实,即修复此问题的 web.config 方法仅在 IIS 7 + 中受支持。

          通过 [MSDN] OP 中的文章链接

          配置 Web 服务器以指定 默认兼容模式

          网站管理员可以配置 他们的网站默认为特定的 文件兼容模式由 为站点定义自定义标题。 具体流程看你的 网络服务器。例如,以下 web.config 文件启用 Microsoft Internet 信息服务 (IIS) 定义一个自定义标题 在 IE7 中自动呈现所有页面 模式。

          但请参阅:IIS.NET article

          IIS 7.0  The <customHeaders> element of the <httpProtocol> element was introduced in IIS 7.0.
          

          【讨论】:

            【解决方案7】:
                <!-- Use IE7 mode added on 13th October for IE8 BSCI-->
                       <!--  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> -->
                <!-- Use IE7 mode added on 20th October for IE8 BSCI-->
                        <meta http-equiv="X-UA-Compatible" content="IE=IE7" /> <!--- This appears to work on testing! -->    
                        <!-- END -->   
            

            使用“模拟”不起作用,但 IE=IE7 起作用

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2012-06-07
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2013-12-29
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多