我有一个为IE7编写的遗留内部网Web应用程序,它包含一些不良的CSS,这使得它在IE8中呈现错误。由于使用它的组织现在切换到IE8,我已通过将X-UA-Compatible
HTTP标头设置为EmulateIE7
来启用IE7仿真。我已确认标头实际上是通过wget -S
发送的。
对于大多数用户来说没有问题,但是有些用户报告错误地呈现了一个(相当重要的)iframe。虽然我无法重现问题,但只需使用IE8和开发者工具并将文档模式设置为“Internet Explorer 8标准”即可实现相同的效果
因此,对于某些用户来说,“某些东西”似乎会导致一个iframe呈现的文档模式与HTTP标头指定的文档模式不一致。
所以问题是:在这个页面中可能会发生什么使IE8切换出HTTP标头指定的文档模式?
编辑:根据@VáclavDajbych提供的链接,我发现根据流程图我应该得到IE7标准模式(正如我所料)。流程是:不,不,是, 是的是的。我受影响的页面的文档类型是
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
答案 0 :(得分:1)
检查determining IE8's document mode。在决策算法中,只有元标记和开发人员工具设置具有比HTTP标头更高的优先级。有代理服务器吗?我不知道还有什么可能导致它。