GML
- 是第一代置标语言,使文档能明确将标示和内容分开。
GML
主要用来解决不同系统中文档格式不同的问题。
SGML
- 在
GML
的基础上进行整理,形成了一套非常严谨的文件描述方法。它的组成包括语法定义,DTD(W3C DTD 教程),文件实例三部分。 SGML
是国际上定义电子文档和内容描述的标准。SGML
因太严谨规范达500多页,故而不易学、不易用、难以实现,所以在它的基础上又发展出了其他的更易用的置标语言。
HTML (HyperText Markup Language) / 超文本标记语言
- 是人们抽取了
SGML
的一个微小子集而提取出来的。其早期规范比较松散,但比较易学。
XML (Extensible Markup Language )/ 可扩展标记语言
- 也是
SGML
的一个子集,但使用比较严格的模式。
XHTML (Extensible Hypertext Markup Language) / 可扩展超文本标记语
- 它的出现是因为
HTML
扩充性不好,内容的表现跟不上时代的变化(如无法表示某些化学符号等),以及因为性能的问题,官方逐渐趋于严格的模式,所以使用XML
的严格规则的XHTML
成了W3C 计划中HTML
的替代者。
HTML5
- 经过一系列修订,到现在说的
HTML
一般指HTML 4.01
; - 而现在的
HTML 5
则是HTML
的第五个修订版,其主要的目标是将互联网语义化,以便更好地被人类和机器阅读,并同时提供更好地支持各种媒体的嵌入。 HTML5
本身并非技术,而是标准。它所使用的技术早已很成熟,国内通常所说的html5
实际上是html
与css3
及JavaScript
和api
等的一个组合,大概可以用以下公式说明:HTML5≈HTML+CSS3+JavaScript+API
DOCTYPE文档类型
W3C DTD 教程
DOCTYPE文档类型指出浏览器按照什么规则解释HTML或XHTML中的标记
W3C标准出来之前,浏览器对页面的渲染没有统一的标准,即混杂模式;
W3C标准出来后有了统一的标准,即标准模式;
有的网页没有doctype声明
或者doctype声明
错误(DTD的URL错误等),就以混杂模式解析,即兼容老版浏览器
完整的doctype
声明一般都会以标准模式解析
在HTML4.0
中,doctype
声明引用DTD
,因为HTML4.0
基于SGML
;
H5
不基于SGML
,因此不需要引用DTD
。
那么?
HTML5 为什么只需要写 <!DOCTYPE HTML>
?
HTML5
不基于SGML
,因此不需要对DTD
进行引用,但是需要doctype
来规范浏览器的行为- 而
HTML4.01
基于SGML
,所以需要对DTD
进行引用,才能告知浏览器文档所使用的文档类型 - 如今的
HTML5
标准制定了两种实现语法HTML
和XHTML
。HTML
不再基于任何特定的标记语言系统,它有自己完整的标准。而XHTML
是XML
的一个应用。