2.2 文档模式
IE5.5引入了文档模式的概念,而这个概念是通过使用文档类型(doctype)切换实现的。最初的两种文档模式是:混杂模式(quirks mode) 和标准模式(standards mode)。混杂模式会让IE的行为与(包含非标准特性的)IE5相同,而标准模式则让IE的行为更接近标准行为。虽然这两种模式主要影响CSS内容的呈现,但在某些情况下也会影响到JavaScript的解释执行。本书将在必要时再讨论这些因文档模式而影响JavaScript执行的情况。
在IE引入文档模式的概念后,其他浏览器也纷纷效仿。在此之后,IE又提出一种所谓的准标准模式(almost standards mode)。这种模式下的浏览器特性有很多都是符合标准的,但也不尽然。不标准的地方主要体现在处理图片间隙的时候(在表格中使用图片时问题最明显)。
如果在文档开始处没有发现文档类型声明,则所有浏览器都会默认开启混杂模式。但采用混杂模式不是什么值得推荐的做法,因为不同浏览器在这种模式下的行为差异非常大,如果不使用某些hack技术,跨浏览器的行为根本就没有一致性可言。
对于标准模式,可以通过使用下面任何一种文档类型来开启:
<!-- HTML 4.01 严格型 -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<!-- XHTML 1.0 严格型 -->
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
而对于准标准模式,则可以通过使用过渡型(transitional)或框架型(frameset)文档类型来触发,如下所示:
<!-- HTML 4.01 过渡型 -->
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<!-- HTML 4.01 框架集型 -->
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<!-- XHTML 1.0 过渡型 -->
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!-- XHTML 1.0 框架集型 -->
< !DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Frameset//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
准标准模式与标准模式非常接近,它们的差异几乎可以忽略不计。因此,当有人提到"标准模式"时,有可能是指这两种模式中的任何一种。而且,检测文档模式(本书后面将会讨论)时也不会发现什么不同。
IE8又引入了一种新的文档模式,叫做超级标准模式。超级文档模式可以让IE以其所有版本中最符合标准的方式来解释网页内容。总的来看,混杂模式让IE像IE5,标准模式使用IE7的呈现引擎,而超级标准模式则是IE8的默认文档模式--不过,在IE8中使用下面这个特殊的<meta>值可以关闭其默认文档模式:
<meta http-equiv="X-UA-Compatible" content="IE=7" />
其中,content属性中IE的值用于指定使用哪个版本的呈现引擎来呈现页面。设计这个值的目的就是为了向后兼容那些专门为老版本的IE设计的站点和页面。
与准标准模式类似,超级标准模式与标准模式一般也不会有什么差别。因此,本书在提到标准模式时,指的是除混杂模式之外的其他所有模式。
分享到:
相关推荐
“兼容性视图”涉及两个重要的功能便是“浏览器模式”和“文档模式”,本文将简单的介绍这两个模式的区别。
浏览器模式与文档模式区别[参照].pdf
TCP多文档模式,发送深圳标注数据包,包含解析,加密,解密,编码等功能
IE8浏览器如何确定文档模式.docx
有关sd卡的英文协议,是pdf文档模式,提供给大家学习学习。
改工程创建了一个单文档窗口,窗口并添加Button控件,在单文档窗口实现单击鼠标左键,会弹出MessageBox,显示你鼠标点击的坐标,点击button,会出现带有是否选项的对话框,点击否会弹出新的MessageBox。当然这只是...
对于软件开发者来说,这个是正规的软件开发的前期文档,可以作初学者的学习对象
通过编写学生成绩单存取软件学习MFC单文档保存和打开的两种方法:第一种是在新建project时在step4中选择"Anvanced...",其中“File extension”就是让你输入你想要保存文件时的默认扩展名,而保存和打开是通过串行化...
oracle 归档模式oracle 归档模式oracle 归档模式oracle 归档模式oracle 归档模式oracle 归档模式oracle 归档模式
为了解决目前存在大量XML文档无模式定义的问题,提出一种XML文档模式的自动构造算法。该算法以xML数据为输入,输出具有通用意义的文档模式,再根据具体要求转化到所要求的文档定义类型。实验证明,该模式构造算法...
mplayer slave 模式文档mplayer slave 模式文档mplayer slave 模式文档
包含23种设计模式的全部java版源代码。很好用的还是设计模式的帮助文档,该文档有每个设计模式的定义,UMl图,所需类,意图,适应性,优缺点,还有对应的类的源代码!
设计模式文档,供大家阅读,里面解释了设计模式。全是DOC进行解读设计模式。
Java设计模式帮助文档
设计模式参考文档 创建模式: 设计模式之Factory 设计模式之Prototype(原型) 设计模式之Builder 设计模式之Singleton(单态) 结构模式: 设计模式之Facade(外观) 设计模式之Proxy(代理) 设计模式之Adapter(适配器) 设计...
MFC单文档/视图显示图像,通过LoadBmp从磁盘上加载图片。
NULL 博文链接:https://yangpeihai.iteye.com/blog/1709914
mfc基础学习,单文档实现封闭图元矩形的绘画,画刷,画笔的应用,
java设计模式的doc文档,含有各种设计模式的图解,希望对需要的人有所帮助
本份帮助文档主要是为了向读者介绍二十三种设计模式,包括模式的描述,适用性,模式的组成部分,并附带有简单的例子和类图,目的是为了让读者了解二十三种设计模式,并能方便的查阅各种设计模式的用法及注意点。