2

我刚刚完成了我的网站的布局,它在所有浏览器(Opera、Safari、Chrome、IE 7、8、9、10(两者)和其他几个浏览器中都运行良好)——但这一次,兼容性IE 10 地址栏中的查看按钮出现。这已经很久没有发生了,这真的让我很烦。

我根本不希望显示“兼容性视图”按钮。它向观众/访客发送了一个坏消息。在这种情况下,我在不同的计算机上测试了我的整个站点,这些计算机都运行不同的浏览器和不同版本的浏览器,但我没有注意到一个问题。

如果没有问题,为什么会出现兼容性视图按钮?

这就是问题所在,就像我说的那样,一切正常 - 除了我在 IE 10 中打开兼容性视图时。当我打开它时,我整个网站中唯一能看到的就是我的徽标,还有一个小图像页面的右上角(但它们正好位于我想要的位置)。是什么赋予了?

代码没有任何问题 - 说真的。我已经对其进行了多次验证,所有 AJAX 的东西都像一个魅力,我真的很努力地寻找一个问题,我什至故意试图把它搞砸,但它工作得非常好。一切的定位都是正确的。

那么这个兼容性视图垃圾是怎么回事呢?为什么会出现在一个没有任何问题的网站上?而且,最重要的是,确保我的网站在兼容性视图中运行良好是否重要,即使它在关闭时运行良好,即使它在所有主要浏览器中都运行良好 - 然后是一些

4

2 回答 2

8

首先,您可以强制 IE 不显示 Compatibility View 按钮,只需将其添加到您的页面标题:

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

至于你的其他问题:

如果没有问题,为什么会出现兼容性视图按钮?

那么这个兼容性视图垃圾是怎么回事呢?为什么会出现在一个没有任何问题的网站上?

如果一个站点(通常是多年前编写的站点)无法在较新版本的 IE 中运行,它就在那里,以允许用户查看或 IE 以旧版渲染模式显示它,希望它可以更好地运行。

此外,它默认存在,因为旧网站甚至没有上面的元标记。为了在查看现有网站时显示按钮而无需更新其代码,将其设置为退出功能是合乎逻辑的,让开发人员将其添加到新代码中以告诉较新版本的 IE 隐藏按钮不需要的时候。

而且,最重要的是,确保我的网站在兼容性视图中运行良好是否重要,即使它在关闭时运行良好,即使它在所有主要浏览器中都运行良好 - 然后是一些

兼容性视图适用于专为旧版浏览器设计的网站,因此依赖于较新的浏览器中不存在的旧版渲染怪癖,这可能会在那些较新的浏览器中导致“问题”。

如果没有看到您的网站,我们将无法确定为什么它在 IE7 模式下可以在 IE7 和 IE10 中运行,但不能在兼容性视图中运行,但如果它在较新版本的 IE 中运行良好,则您无需确保它在 IE7 模式下运行良好兼容性视图。在不需要时使用上面的元标记来隐藏按钮就足够了。

于 2013-05-21T09:14:47.930 回答
1

您能给我们提供您网站的链接吗?我总是用

<!DOCTYPE html>

在 HTML 文档的第一行。这是所有现代浏览器中到最新渲染模式的通用切换。使用 BoltClock 的解决方案在 IE 的地址栏中隐藏兼容的视图按钮。我更喜欢 HTTP 标头而不是 HTML 元标记,因为元标记会导致解析器切换和重置。

于 2013-05-21T09:58:20.350 回答