版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/cjmust/article/details/79271521
名词解释
- SGML(Standard Generalized Markup language 标准通用标记语言):是一种定义电子文档结构和描述其内容的国际标准语言。
- DTD(Document Type Definition文档类型定义):是一套为了进行程序间的数据交换而建立的关于标记符的语法规则。
- ASCII(American Standard Code for Information Interchange,美国信息交换标准代码);
- 在HTML文档中,
<!DOCTYPE>
必须位于html
标签之前,它可以告知浏览器使用哪个版本的html标准来解析当前文档 <!DOCTYPE>
标签对大小写不敏感
HTML 4.01
html4基于SGML(标准通用置标语言),因此需要引入DTD文件来告知浏览器该html文档所采用的标准。
声明HTML4.01时,有3种DOCTYPE声明方式,分别引入了不同的DTD文件。
- HTML 4.01 Strict
包含了所有HTML元素和属性,但不包括展示性的和弃用的元素。不允许使用框架集
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
- HTML 4.01 Transitional
包含了所有HTML元素和属性,且包括包括展示性的和弃用的元素。不允许使用框架集
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
- HTML 4.01 Frameset
包含了所有HTML元素和属性,且包括包括展示性的和弃用的元素。允许使用框架集
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
HTML 5
HTML5本身并不基于SGML(Standard Generalized Markup language)
HTML5无需引用DTD文档,声明方式也只有一种。
<!DOCTYPE HTML>
因为HTML5本身就是一种网络标准,每一个浏览器和平台都可以去实现它,它的缺点也正因如此,会有很多浏览器(ie你好)无法完整地支持它的标签,而且不同浏览器也会由于没有DTD的约束将会缺少一种统一的数据格式(也就是说不同浏览器对于HTML5的实现会有不同)。
为了促进标准的统一,HTML5的一个原则就是所有技术必须是开放的,不准有专利限制,不准有专利限制
不过好大部分的HTML协议在众多的网络公司中都达成共识(W3C的成员都是dalao),目前主要的问题在于视屏格式的争议(苹果阵营和google两大阵营,一方坚持H.264主流但收费,一方坚持WebM免费但新型,据说google自家浏览器已经不支持H.264解码的视屏了??)。
当HTML5的标准完全统一时,HTML5将会成为主流。
2014年时HTML5就已经是w3c的推荐标准