it-swarm.cn

HTML和“怪癖”与“标准合规”模式:解释,告诉我们为什么要关心?

在构建HTML网页时,“怪癖”模式和“标准合规”模式之间有什么区别?

如何判断何时以一种模式运行?为什么人们 - 即网站管理员和网页设计师和开发人员 - 关心选择标准合规性 =模式而非怪癖模式?

在开发新内容时,怪癖模式是否合理?

16
Chris W. Rea

这里 可能是我找到的关于怪癖模式的最好的文章。我个人尽量使用标准模式,因为它最有可能与大多数浏览器一起使用。

11
txwikinger

如果你在怪癖模式下开发,那么你实际上是要求浏览器模拟IE6之前的错误。这真的是你想要做的吗?

维基百科 解释了触发怪癖模式的基础知识,但有一些特殊情况并没有涵盖。 由txwikinger提供的链接 给出了历史和主要差异的一个很好的解释。

Jukka Korpela解释了 更详细的差异 以及如何检查兼容模式:

检查模式要检查浏览器所处的模式(Quirks vs. Standards),

在Firefox上,使用命令“视图/页面信息”(并参见“常规”窗格);或者如果您有Web Developer Extension,只需检查其工具栏中的图标(右侧的第三个图标)。

对于IE,在地址栏中输入javascript:alert(document.compatMode),然后检查弹出窗口是否显示CSS1Compat(表示标准模式)或BackCompat(表示Quirks模式);或者,下载并安装简单的Quirks或Standards Mode Bookmarklet。

值得注意的是,许多浏览器除了怪癖模式外还有两种模式 - 几乎是标准模式和标准模式。不幸的是,IE6和IE7只能在几乎标准模式下运行,所以如果你需要支持这些浏览器,很有可能尝试 在所有浏览器中使用几乎标准模式 。但是,最好是针对标准进行开发,然后尝试修复浏览器怪癖。 HTML5只提供严格模式,因此您应该尝试针对此进行开发,以便将来兼容。

5
Casebash

我发现如果你使用CSS重置或框架,如果你没有包含doctype来将受影响的浏览器(通常是IE7和IE8)切换到标准模式,很多位置的东西都会出错。设置doctype声明并使用Standards Mode几乎总是最好的。

2
Mark Hatton

正如@txwikinger所说, quirksmode 是这里看到的网站。

应该有帮助的唯一附加信息是关于如何检测浏览器在某个页面上使用哪种模式的文章: 检测计算模式 。还有可以执行此操作的浏览器扩展,例如 Web Developer Toolbar 。 FF和Chrome有一个版本。

2
Chris Boylan

Quirks模式使IE 6和7渲染CSS的方式与标准所说的不同。

标准模式使IE 6和7渲染CSS比Quirks模式更接近标准,因此更接近Firefox,Safari,Chrome,Opera和IE 8/9渲染它。

使用标准模式意味着当你试图制作一个令人讨厌的页面时,你会有更少的奇怪的旧IE问题。这意味着你可以使用像CSS这样的书:Eric Meyer的权威指南来查找你的页面应该正在做什么。 IE的Quirks Mode没有相同的综合文档。

1
Paul D. Waite

Quirks模式是浏览器根据HTML规范不按预期呈现页面的地方。有一次,Web浏览器获得了本质上是一个开关 - 在页面顶部包含doctype。如果没有该doctype,浏览器将进入怪癖模式。存在有效的doctype会强制浏览器进入标准模式,即“正确”模式。

最好使用标准模式 - 所以,使用doctype! - 向前推进,因为这可以确保您的网页在尽可能多的浏览器中正确且一致地工作。

1
Grant Palin

它的选择:

  • IE5引擎(或其bug的错误模拟)
  • 更现代的东西(非IE中的最佳功能,IE8中的长篇故事......)

如果你喜欢像1999年那样编写CSS,没有正确的工作中心,那么就要使用怪癖。

1
Kornel