术语解释DTD:DocumentTypeDefinition文档类型定义SGML:StandardGeneralizedMarkupLanguage标准通用标记语言。SGML是一种功能强大但复杂的标记语言,HTML和XML都是从中派生出来的。为什么有个“!”?语句不是HTML标签;在哪里?语句必须放在HTML文档的第一行,在标记之前。是做什么的?告诉浏览器使用什么标准来解析这个文档。DOCTYPE缺失或格式错误会导致文档以兼容模式呈现。HTML4.01和HTML5DOCTYPE有什么区别?HTML5只有一个声明:HTML4.01有三个声明:strict、transitional、framesetHTML4.01基于SGML,需要引用DTD来告知浏览器所使用的文档类型。HTML5不基于SGML,不需要引用DTD,但需要使用DOCTYPE规范浏览器行为。SGML是最强大也是最古老的,XML是SGML的一个子集,HTML最初也试图成为SGML的一个子集,但是HTML4之前并没有严格遵守SGML标准。后来出现了HTML4、XHTML(XML-compliantHTML),都符合SGML的要求。W3C在制定HTML5标准时,希望去掉SGML一些无用的函数和声明,延续HTML4的风格,而不是XHTML那种严格的风格。页面渲染模式页面渲染模式根据是否声明DOCTYPE分别触发兼容模式和标准模式。document.compatMode可以返回当前页面的兼容模式:document.compatMode>CSS1Compat//StandardMode>BackCompat//WeirdMode,CompatibilityModeStandardMode页面布局和JS运行模式都是以浏览器支持的最高标准运行.在兼容模式下,页面以松散的向后兼容方式显示,模拟旧浏览器的行为以防止站点崩溃。为什么参考文献说HTML5“不再基于SGML”?
