天天看点

《HTML5多媒体应用开发》——1.2 HTML5的发展

本节书摘来自异步社区《html5多媒体应用开发》一书中的第1章,第1.2节,作者: 【爱】ian devlin 更多章节内容可以访问云栖社区“异步社区”公众号查看。

tim berners-lee是html之父,这是相当为人熟知的,在当今的web开发领域中每个人都承认这一点。

没有必要了解html从1990年的初始版本到大部分人已经了解的html 4.01之间漫长而详细的历史,但是html5取得成果和进展的过程值得一提。

1998年,万维网联盟(w3c,www.w3.org)成员决定,不值得对html 4.01规范作进一步扩展。他们决定未来的web将依靠xml(扩展标记语言),因为它的语法更加严格,这就使得xml web文档更加容易处理。

将html 4.01放在一边,他们开始继续为xhtml 1.0开发一个新的规范,这实际上是将html 4.01 改造成包含许多严格的语法规则的xml词汇表。从个人角度上讲,我对此很着迷,因为我喜欢它们的一致性,但是并非每个人都认同这一点,因此创造出了两种不同特色的xhtml:xhtml transitional用于帮助转化不信仰xhtml的人,而xhtml strict是为真正的信仰者而创造的,并且w3c希望不信仰的人最终也会遵循这一规范。

这种状况维持了许多年,因为不信仰xhtml的人中,有的回到html 4.01,有的对xhtml transitional感到满足。在w3c对更严格的xhtml世界的梦想开始趋于破灭的时候,它的成员们坚持了下来,开始开发xthml 2.0规范。

这一决定似乎很奇怪,因为xhtml并不像w3c所希望的那样得到广泛支持。当时最流行的浏览器之一(现在仍然流行,只是份额有所下降)internet explorer(ie浏览器)甚至不支持xhtml。实际上,将一个web文档声明为xhtml将导致ie浏览器试图下载页面而不是显示它!此外,预先创造一个新的xhtml 2.0规范不能反映当时现实世界中web开发人员的实际工作。而且,它不是向后兼容的,在后面你将会学习到,这是html5的另一个优点。

html5和向后兼容性

最早出现的html文档之一—“链接和锚”(www.w3.org/history/19921103- hypertext/hypertext/www/link.html)几乎就是一个有效的html5!

2004年2月,一个被称为whatwg(web hypertext application technology group,web超文本应用技术小组:www.whatwg.org)的独立小组发布了新规范的一个草稿—web forms 2.0,这个规范着眼于扩展html表单。这个规范与w3c没有关系,它的实际陈述如下:

“这个文档目前与w3c完全没有任何正式的关系。它是相关各方在宴会、各种邮件列表、irc以及私人电子邮件中松散合作的结果。”

形势就这样持续下去,w3c继续开发xhtml 2.0,而whatwg走自己的道路,包含了另一个规范—web applications 1.0的前期成果。结果是,web applications 1.0成为了现在html5的先驱。

2006年形势有了更好的转机,这时w3c改变了对xhtml的思路,决定不再推进它。2007年,w3c向第5个w3c html工作组发放特许,并宣布将xhtml 2工作组的特许期限定为2009年底。以whatwg的web应用规范为基础,w3c和whatwg都开始开发一个新的html规范,奇怪的是,这并不是一个协作的过程。

结果是,实际上这个规范有两个不同的版本,但是两者的主笔都是google的ian hickson。幸运的是,两者之间的差异并不多,主要的差异是维护规范的方式。whatwg的规范是“持续维护的活跃标准”,按照段的粒度进行维护。而w3c的规范遵循更传统的方式—分阶段发布。从内容上看两者大体相同,主要的不同(在本书编写的时候)是whatwg版本包含了w3c版本所没有的webvtt文件格式和一些文本轨道api特性(在第8章中讨论)。目前,w3c和whatwg的html5版本都处于“收尾”阶段,这意味着w3c邀请内部和外部社区对规范的技术合理性进行确认。

html5规范

现在有两个可用的html5版本,此外还有一些值得一看的版本。

jj w3c html5规范。最新发布版本在www.w3.org/tr/html5,这个版本最接近于最终版本。

jj whatwg html5规范。最新的标准在www.whatwg.org/specs/web-apps/ current-work/multipage。新增加的内容通常在最终进入w3c规范之前先添加到这个规范中。

什么时候可以使用html5

实际上,现在你就可以使用html5。你可能已经意识到,许多现有的网站使用html5编写。尽管目前对html5规范达到建议状态的目标日期是2014年,但并不意味着你不能使用它。

在本书编写的时候,所有主要浏览器的最新版本都或多或少地支持一些html5特性,连ie 9也最终支持html5标记和功能,这应该能够解除你对浏览器兼容性的所有忧虑。

你不应该担心在几年之后html5规范不能达到建议状态。为了正确地看待这一点,我们可以注意,css2.1到2011年6月7日才能达到建议状态,而css 3现在已经盛极一时了。

记住这一点,我们继续去了解html5的一些新的结构化元素。

继续阅读