html5系列2-2 : DOCTYPE与渲染模式(二)
在2-1中讲到,DOCTYPE标签告知浏览器文档使用哪种 HTML 或 XHTML 规范。这次我们来研究下 HTML 与 XHTML 分别有几种文档类型?
无论是HTML还是XHTML,DTD 类型一般都分为三种:严格(Strict)、过渡(Transitional)以及基于框架(Frameset)
一、HTML
HTML 4.01 的三种文档类型声明如下:
(1)严格(Strict)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">就以它为例来说明: (1)!DOCTYPE后紧跟的是 html 说明了文档的根元素是html。 (2)PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 这部分表明了该文档类型在公共标识符被定义为"-//W3C//DTD XHTML 1.0 Transitional//EN"的DTD中进行了定义 (3)"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" 最后这句表示:如果在(2)中找不到DTD,浏览器将使用该 URL 作为寻找 DTD 的位置。
接着再来研究一个问题:这一讲中的6种文档类型怎么触发上一讲中的3种渲染模式呢?触发机制按渲染类型来分: (1)混杂模式:没有使用DTD声明,在该模式下各浏览器的显示效果差异是比较大的,所以不推荐不写DTD声明。 (2)标准模式:HTML 4.01 Strict 与 XHTML 1.0 Strict的 DTD声明都会触发标准模式。 (3)准标准模式:HTML 4.01 Transitional,HTML 4.01 Frameset,XHTML 1.0 Transitional,XHTML 1.0 Frameset 的DTD声明都会触发准标准模式。备注:该博文为原创博文,如果转发请注明出处。(max.li)