javascript - IE8 远程页面渲染错误

标签 javascript css internet-explorer-8

这可能与 ExtJS 没有任何关系,但我必须提供所有信息才能得到正确的答案:D。

我有一个使用 ExtJS 4.1 来显示一些网格面板的应用程序。

当我在本地主机上运行应用程序时,一切看起来都正常。

当我在远程服务器上部署应用程序时,网格不再按 IE8 中的要求显示:所有信息都被挤压在表格中,无论列对齐如何(列标题很好,但其他单元格是重叠)。

让事情变得更通用:

相同的应用程序在本地主机上运行良好(无论在哪台计算机上),但是当我将其部署在服务器上时,IE8 不会按应有的方式显示内容。发生这种情况是因为 CSS 或 JavaScript 文件(可能都与 ExtJS 相关)。

为什么?

最佳答案

根据 OP 的请求,将此作为答案发布:

默认情况下,IE 运行时会为 Intranet 站点启用兼容性 View 。其原因可能是大多数使用 IE 的 Intranet 站点都是专门为 IE 编写的,因此当 IE 开始更严格地遵守标准时就会崩溃。

这可能会导致本地查看的内容与 Intranet(以及 Internet)上查看的内容之间存在差异。这可以通过 Windows 组策略进行全面更改;有些组织可以接受这一点,有些组织不能/不会做出改变。

如果声明 meta http-equiv="X-UA-Compatible"content="IE=edge" 不能修复行为(如评论中所述),我将首先检查兼容性 View 实际上是问题所在。

其他可能性
我假设您拥有正确的文档类型(例如严格的 HTML 5 或 HTML 4,尽管我相信其他文档类型也可以正常工作)。这与“X-UA-Compatible”声明结合使用。

格式错误的标记可能会触发怪癖模式,这在几乎任何情况下看起来都很糟糕。情况可能并非如此,因为它在本地看起来很好,但很容易检查。确保您的文件合理valid更重要的是,DTD 之前没有前导字符(这会使解析器感到困惑)。不正确的服务器代码可能会导致数据在 HTML 之前写入响应流,从而导致此行为。

最后,将问题简化为最简单的形式,即找到导致该行为的最基本的标记。如果这不能给您任何见解,请将损坏的代码发布在 JS Fiddle 中。

关于javascript - IE8 远程页面渲染错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11685257/

相关文章:

CSS:在悬停状态下重新定位元素但保持可点击区域位置

javascript - 为什么我的 javascript 文件在 IE7 上不起作用?

IE8 上带有嵌套 img 布局错误的 HTML 输入

javascript - Jquery - 获取父元素的数据ID

javascript - 比较 2 个嵌套对象数组,同时忽略 Javascript 中的某些属性

javascript - 使用 Javascript 获取 PHP 数据并将其分配给数组

javascript - 堆叠 HTML 元素的顺序

jquery 切换动画元素消失

Javascript:未定义单词反转功能?

css - 背景不透明度适用于 ie7 和 ie9,但不适用于 ie8