HTML和“怪癖”与“标准合规性”模式:解释一下,并告诉我们为什么要注意?


16

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

如何分辨以一种模式与另一种模式进行比较?为什么人们(即网站管理员,网站设计师和开发人员)应该关心选择标准遵从性模式而不是怪异模式?

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

Answers:


11

可能是我发现的有关怪癖模式的最佳文章。我个人尝试尽可能地始终使用标准模式,因为它具有与大多数浏览器一起使用的最佳机会。


5

如果您以怪癖模式进行开发,则实际上是在要求浏览器模拟IE6之前的错误。那真的是您想做的事情吗?

Wikipedia解释了触发怪癖模式的基础知识,但是有许多特殊情况没有涉及。txwikinger提供的链接很好地解释了历史和主要差异。

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

检查模式要检查浏览器处于哪种模式(Quirks vs. Standards),

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

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

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



2

我发现,如果您使用CSS重置或框架,而不包含将受影响的浏览器(通常是IE7和IE8)切换到“标准模式”的文档类型,则很多位置错误都会开始。几乎总是最好设置doctype声明并使用“标准模式”。


1

在怪癖模式下,浏览器无法按照HTML规范显示页面。有一次,Web浏览器获得了本质上的转换-在页面顶部包含doctype。如果没有该doctype,浏览器将进入怪癖模式。有效doctype的存在会迫使浏览器进入标准模式,即“正确”模式。

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


1

Quirks Mode使IE 6和7渲染CSS的方式与标准规定的不同。

标准模式使IE 6和7呈现的CSS比Quirks模式更接近于标准,从而更接近Firefox,Safari,Chrome,Opera和IE 8/9的呈现方式。

使用标准模式意味着,当您尝试使页面页面变得怪异时,您可以解决的怪异旧IE问题就更少了。这意味着您可以使用诸如Eric Meyer撰写的CSS:The Definitive Guide之类的书来查找页面执行的操作。IE的Quirks模式没有同样全面的文档。


1

可以选择以下选项:

  • IE5引擎(或其错误模拟)
  • 更现代的东西(在非IE中尽力而为,在IE8中冗长的故事…)

如果您想像1999年那样编写CSS,但又无法居中工作,请使用怪癖。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.