【问题标题】:IE8 compatibility mode...help?IE8兼容模式...帮助?
【发布时间】:2011-03-15 20:22:28
【问题描述】:

我正在尝试在我们的一个网络产品中设置兼容模式,但是我无法通过特定服务器获得兼容模式。

回顾一下我到目前为止所做的事情:

  1. 我已将 IIS 中的 HTTP 标头 X-UA-Compatible 设置为 IE=7

  2. 我还设置了将 meta 元素作为 head 元素中的第一个元素添加到母版页:

我使用 fiddler 检查了 HTTP 流量,并且可以看到标头值和元元素。当我指向我们的登台服务器时,使用相同的浏览器(不同的选项卡),文档呈现为 IE7 浏览器模式和 IE7 文档模式。这是伟大的。不幸的是,当我指向以与登台服务器相同的方式配置的实时服务器时,文档呈现为 IE8 浏览器模式和 IE7 文档模式。

因此,当我检查开发工具时,应用于 html 元素的 CSS 是

" 即 ie8 CSS1Compat Win32"

" ie7 CSS1Compat Win32"

有没有人提出我可能错过的任何建议?

注意 DOCTYPE 指令前有一个空行(这是有意义的)。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:b="http://www.backbase.com/2006/btl"
    xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:e="http://www.backbase.com/2006/xel"
    xmlns:c="http://www.backbase.com/2006/command" xmlns:d="http://www.backbase.com/2006/tdl"
    xmlns:x="http://woodmac.com/x">
    <head><meta http-equiv="X-UA-Compatible" content="IE=7" /><meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /><meta http-equiv="expires" content="-1" /><meta name="robots" content="index,follow" />
        <script type="text/javascript" src="Backbase/engine/boot.js"></script>

    <link href="App_Themes/MANDA/print_style.css" type="text/css" rel="stylesheet" /><link href="App_Themes/MANDA/screen_style.css" type="text/css" rel="stylesheet" /></head>
    <body>

谢谢,

菲利普

【问题讨论】:

    标签: internet-explorer-8 ie8-compatibility-mode


    【解决方案1】:

    看看this site,看看你是否遗漏了什么。它可能与文档类型有关,但看起来元标记应该覆盖它。

    【讨论】:

    • 谢谢,当我清除缓存时,登台站点和实时站点都开始正常运行……不幸的是,不在 IE7 浏览器模式下。尽管有 Header 和 meta 标签,它们现在都在 IE8 浏览器模式下呈现。文档模式虽然是 IE7...
    • 发布您从服务器返回的 HTML 输出的前几行。不是来自提琴手,而是来自 IE 内部的实际视图源......
    • 我很好地阅读了您指给我的那篇文章。查看链接到那篇文章的blogs.msdn.com/b/ie/archive/2009/02/16/…。 Compatibility View 和 X-UA-Compatible 标签不等价,不幸的是,这意味着“ie ie8 CSS1Compat Win32”与 CSS 的应用有关。
    • 不了解你,但我现在在这个线程中感受到了对 IE 的热爱 :)
    【解决方案2】:

    您使用什么 url 来访问每个服务器? IE8 有一个默认启用的选项,它将强制“intranet”或单一名称域以兼容模式呈现,而不管您的 XUA 和其他标头设置如何(工具 > 兼容性视图设置 > 在兼容性视图中显示 Intranet 站点)。

    如果启用了此设置,并且您正在使用http://servername 之类的内容访问您的一个或另一个临时站点和生产站点,那么无论您的设置如何,这都可能导致它们呈现不同的方式。

    最近我遇到了这个问题,最终要求使用域扩展名(例如http://servername.company.com)访问所有服务器,并将 XUA 标头设置为 IE7。现在无论在哪个服务器上运行,所有内容都以 IE7 模式呈现。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-07-02
      • 1970-01-01
      • 2010-11-22
      • 2011-04-08
      • 2011-01-31
      • 1970-01-01
      • 1970-01-01
      • 2010-11-04
      相关资源
      最近更新 更多