10

我以为它们是一样的,但我刚刚发现它们不是!

使用 IE8,我可以获得相同的网页以 3 种不同的方式显示:

  1. 标准模式。XHTML Strict DOCTYPE 位于网页顶部。

  2. 与上述相同,只是在 IE8 中单击了“兼容模式”。现在网页显示有点奇怪。

  3. 如果我从网页中删除 DOCTYPE(这会强制使用怪癖模式?)。现在网页显示非常糟糕,与在“兼容模式”下查看时不一样。此时单击“兼容模式”没有任何区别。

4

2 回答 2

12

Quirks 模式基本上是一种 IE5 兼容模式。它是由没有有效的<!DOCTYPE>声明触发的。主要影响是它导致浏览器使用 IE5 盒子模型,这意味着所有的内边距、边距和边框,以及任何影响盒子大小的东西都是不正确的。

兼容模式是一种 IE7 兼容模式(IE9 也有 IE8 兼容模式),它由指定页面应使用它的元标记或由用户的浏览器配置触发。

两者也可以在开发者工具窗口中明确指定。

兼容模式有时可用于测试(因为 IE7 没有开发人员工具窗口)以及公司太便宜而无法更新其代码以应对较新浏览器的 Intranet 站点。(但话虽如此,兼容模式并不是IE7 的精确复制品;它有自己的错误和问题,因此对于大多数测试,您最好坚持使用 IE7 的真实副本)

永远不应该使用怪癖模式。谁会想与 IE5 兼容?

于 2011-07-18T11:20:38.643 回答
1

ie8 中的兼容模式按钮通常再现通过 ie7 浏览器查看网页的效果,这意味着如果存在 doctype,它将文档模式设置为 IE7 标准,否则将文档模式设置为 IE5(或 quirks 模式)。

因此(假设没有覆盖正常行为的元标记)在案例 1 中,页面以 ie8 模式显示,案例 2 以 ie7 模式显示,案例 3 其 IE5(怪癖模式),无论是否使用兼容性视图。

这里有一个页面 - http://www.nczonline.net/blog/2010/01/19/internet-explorer-8-document-and-browser-modes/它描述了 Internet Explorer 中的文档模式令人困惑的混乱比我清楚得多...

于 2011-07-18T11:04:34.123 回答