【问题标题】:Compatibility View and its importance兼容性视图及其重要性
【发布时间】:2013-05-22 01:10:05
【问题描述】:

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

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

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

这就是问题所在,就像我说的,一切正常 - 除了我在 IE 10 中打开 ON 兼容性视图时。当我打开它时,我整个网站中唯一可以做的事情请参阅我的徽标,以及页面右上角的一个小图像(但它们的位置正是我想要的位置)。什么给了?

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

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

【问题讨论】:

  • 您确定您在 IE7 中测试过您的网站吗?因为这正是兼容性视图的本质(或行为方式)。
  • 100% 肯定。我什至在 IE6 中进行了测试(它只有轻微的定位问题 - 但它们太小了,我什至不会担心)!我什至使用 IE10 中的开发工具来模拟(如果这是正确的话)IE7(以及使用实际的 IE7 浏览器)。

标签: html css internet-explorer


【解决方案1】:

首先,您可以强制 IE 不显示兼容性视图按钮,只需将其添加到您的页面标题:

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

至于你的其他问题:

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

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

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

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

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

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

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

【讨论】:

  • 很抱歉,我无法提供该网站的链接。这是我自 2008 年以来的第一次发布,我不知道它是谁,但是当我上传东西时它被盗了。我知道这是必要的,但目前我真的只想接受(您提供的)会导致此类问题的提示和已知事物。
【解决方案2】:

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

<!DOCTYPE html>

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

【讨论】:

  • 虽然网站已经建好,但我还不能上传。我们有人偷了我们的东西,我不想在其他相关网站完成之前上传任何东西。对不起,我知道这对你帮助我没有帮助,但我就是做不到。但是我确实已经在顶部添加了` :-) 谢谢
猜你喜欢
  • 2012-03-03
  • 1970-01-01
  • 2012-08-29
  • 1970-01-01
  • 2019-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多