我有一个自定义的 ASP.NET Web 应用程序,它在 IE6 上运行良好,没有任何问题。但是,如果我在 IE7/IE8 上启动它,它会抱怨兼容性问题,并且我的所有文本都重叠了。
我的一位同事(微软链接如下 -http://support.microsoft.com/kb/968499)发送了这些说明。
Click Start, click Run, type inetmgr.exe in the Open box, and then click OK.
Expand the server that you want, and then expand Web Sites.
Right-click the Web site, the folder, or the virtual directory that you want, and then click Properties.
On the HTTP Headers tab, click Add under Custom HTTP headers.
In the Custom header name box, type X-UA-Compatible.
In the Custom header valuebox, type IE=EmulateIE7.
Click OK two times
现在,他告诉我,当我运行 IE8 浏览器时,这就是使应用程序与 IE7 兼容才能运行所需要做的事情,只需将 IE=EmulateIE7 更改为 IE=EmulateIE6 就可以使应用程序与 IE6 兼容,从而也可以在 IE7 上运行(我有点担心,因为我知道 IE8 带有一个显示与 IE6 兼容的按钮,但我从未在 IE7 中看到过类似的按钮)。
不用说,它没有起作用!
有什么想法可以解释为什么 IE6 无法以这种方式工作?
答案1
IE 7、8、Firefox、Chrome 更符合标准。但如果应用程序只能在 IE 6 上运行,并且您的计算机已安装 IE 7,那么您可以尝试使用带有 IE 6 的磁盘映像运行虚拟机。
您可以通过 Google VPC 2007 查找 Microsoft 的 Virtual PC 2007,并通过 Google vhd 查找磁盘映像。
VPC 2007 正式适用于 XP,但普遍的共识是它也适用于 Vista。
VirtualBox 也是虚拟 PC 的不错选择。如果您使用 Win 7,您可以谷歌搜索虚拟 PC,了解有关新 Windows Virtual PC 的新信息。
答案2
您可能正在查看一些样式表问题,而不是应用程序后台代码中的任何问题。IE6 中的页面呈现与 IE7 或 IE 8 有很大不同。我偶尔会遇到同样的问题,通常只是对定义样式进行简单的调整。
您可以使用IE 开发者工具栏(在 IE7 中均可使用,在 IE8 中为标准配置)查看 div 表格等的布局以及相关样式。找到有问题的标记,在两个浏览器中对其进行调整,直到您可以在不同浏览器中获得一致的渲染效果。
祝你好运并希望这对一些人有所帮助。
答案3
您的问题是没有“EmulateIE6”。可能的值列在HTTP-EQUIV 属性 | httpEquiv 属性。
我会尝试将其设置为“IE=5”,看看是否有帮助。
并且绝对有必要将浏览器更新至最新版本。