【问题标题】:Force IE10 to run in IE10 Compatibility View?强制 IE10 在 IE10 兼容性视图中运行?
【发布时间】:2015-09-26 06:17:04
【问题描述】:

我有一个在 IE10 中损坏但在 IE10 兼容性视图中运行良好的应用程序。快速谷歌搜索结果

<meta http-equiv="X-UA-Compatible" content="IE=8">
<!-- plus variations such as emulate, quirks, 7, 8, 9 --->

标签。标签上的一些 MS 文档是here。如果按 F12,您可以看到它更改了文档模式。我需要将 Browser Mode 更改为 Internet Explorer 10 兼容性视图。有没有标签可以做到这一点?

更新 我需要提一下,我已经尝试了以下所有文档类型,但它们都不起作用。我认为让它在 IE10 中工作的唯一方法是使用兼容性视图。

<!--
    <!DOCTYPE html>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
    TRIED NO DOCTYPE AT ALL TOO
-->

【问题讨论】:

  • 我也有同样的问题。
  • 最好的解决方案是解决您遇到的需要兼容性视图的问题。这将更具可持续性,并可能提高绩效。您在 IE10 标准中还有哪些问题?也许我们可以解决这些问题。
  • 如果您能描述在不以兼容模式运行时出现的问题,这些问题可以修复。很难说“在 IE10 中崩溃”是什么意思
  • stackoverflow.com/questions/13641503/… 基本上,确保服务器没有在标头中发送不同的 X-UA_Compatible。

标签: internet-explorer internet-explorer-10


【解决方案1】:

如果你想设置兼容模式在浏览器本身不在html中做以下操作

  1. 打开 IE 10
  2. 按 ALT 键调出 IE 菜单栏
  3. 点击工具菜单
  4. 点击兼容性视图设置。
  5. 点击复选框;在兼容性视图中显示所有网站
  6. 仅将所需网站添加到兼容性视图中

如下图所示。然后该网站应以 IE 10 兼容性视图打开。

【讨论】:

  • 这似乎是使“兼容性视图”工作的唯一方法。
【解决方案2】:

你可以试试:

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

就像你之前尝试过的一样,但要小心:

似乎 X-UA-Compatible 标签必须是 部分中的第一个标签

如果这个结论是正确的,那么我相信它在 Microsoft 的 blogs/msdn 中没有记录(如果有记录,那么它在文档中的突出程度不够好)。确保这是强制IE9成功切换到IE8模式的第一个meta标签

【讨论】:

  • 这不会改变浏览器模式,但会改变文档模式。我不知道是否有任何区别,但到目前为止,我只能使用元标记切换后者。另一方面,后者足以让我遇到问题的页面再次运行。
  • 我必须把这条线放在哪里?
  • 在 HTML 的 部分(抱歉耽搁了)
【解决方案3】:

我遇到了完全相同的问题,这个 - "meta http-equiv="X-UA-Compatible" content="IE=7">" 在 IE8 和 IE9 中效果很好,但在 IE10 中却不行。 .NET 2.0 和 .NET 4 附带的服务器浏览器定义文件中存在一个错误,即它们包含特定范围浏览器版本的定义。但是某些浏览器(如 IE 10)的版本不再在这些范围内。因此,ASP.NET 将它们视为未知浏览器,默认为下层定义,存在一定的不便,比如不支持 JavaScript 等特性。

感谢 Scott Hanselman 的修复。

这是链接-

http://www.hanselman.com/blog/BugAndFixASPNETFailsToDetectIE10CausingDoPostBackIsUndefinedJavaScriptErrorOrMaintainFF5ScrollbarPosition.aspx

这个 MS KP 修复只是将丢失的文件添加到您服务器上的 asp.net。我安装了它并重新启动了我的服务器,它现在可以正常工作了。我原以为 MS 会给这个修复更广泛的分布。

瑞克

【讨论】:

    【解决方案4】:

    我遇到了同样的问题。问题是 MSIE 10 中的一个错误,因此告诉人们解决他们的问题是没有帮助的。也不是告诉您网站的访问者将您的网站添加到兼容性视图中,bleh。就我而言,问题在于以下代码没有显示文本:

    document.write ('<P>'); 
    document.write ('Blah, blah, blah... ');
    document.write ('</P>');
    

    经过多次试验和错误,我确定删除

    标记会导致文本正确显示在页面上(因此,问题在于文档模式而不是浏览器模式,至少在我的案子)。当 userAgent 是 MSIE 时删除

    标记不是我想要放入我的页面的“修复”。

    正如其他人所说,解决方案是:

    <!DOCTYPE HTML whatever doctype you're using....> 
    <HTML>
     <HEAD>
      <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
      <TITLE>Blah...
    

    是的,元标记必须是 HEAD 之后的第一个标记。

    【讨论】:

      【解决方案5】:

      虽然您应该修复您的网站以使其在没有兼容性视图的情况下运行,但请尝试将 X-UA-Compatible 元标记作为打开 &lt;head&gt; 之后的第一件事,标题之前

      【讨论】:

        【解决方案6】:

        看这里:

        https://softwareengineering.stackexchange.com/questions/194687/how-the-compatibility-view-in-ie-works-behind-the-scenes

        使用

        &lt;meta http-equiv="X-UA-Compatible" content="IE=EmulateIE10"&gt;

        我刚试了一下,调试窗口显示IE10兼容模式。

        【讨论】:

          【解决方案7】:

          X-UA-Compatible meta 元素仅更改文档模式,而不更改浏览器模式。浏览器模式是在请求页面之前选择的,因此无法包含任何标记、JavaScript 等来更改此设置。虽然文档模式回退到渲染引擎的旧标准和怪异模式,但浏览器模式只是改变了浏览器识别方式等内容,例如用户代理字符串。

          如果您想为所有用户更改浏览器模式(而不是在工具中或通过设置手动更改),唯一的方法 (AFAICT) 是将您的网站添加到 Microsoft 的 Copat 视图列表中。这是由 Microsoft 维护的,以将覆盖应用于中断的站点。有information on how to remove your site from the compat view list,但我找不到请求添加您的信息。

          但是,首选方法是先尝试修复网站上的任何问题,因为当您不使用最新的文档和浏览器模式运行时,您将无法利用浏览器的改进,例如提高性能。

          【讨论】:

          • 对于许多 Web 应用程序来说,修复问题不是一种选择。当解决方案是完全替换软件并且在此之前需要修复时,则不是。
          【解决方案8】:

          你应该试试 IE 5 quirks compatible mod(是默认的 IE10 兼容性视图)

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

          重要:设置在 iframe 结构的顶部(如果您使用 iframe 结构)

          更多信息12

          【讨论】:

            猜你喜欢
            • 2013-01-16
            • 1970-01-01
            • 2013-03-02
            • 2013-03-27
            • 2013-07-11
            • 2016-02-01
            • 1970-01-01
            • 2014-09-13
            • 2014-12-03
            相关资源
            最近更新 更多