LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

从HTML 2.0到HTML5

admin
2011年1月17日 12:36 本文热度 2957



HTML是World Wide Web上统一的语言。使用它所提供的标签,人类已经创建了数之不尽、姿态万千的超链接的文档网络。看看Aamzon、eBay和Wikipedia,再看看个人博客和专为猫咪建立的站点,无一不是HTML的杰作。


HTML5是这门通用语言的最新版。虽然这次升级的变化之大史无前例,但HTML更新换代已经不是第一次了。下面我们不溯本求源,从它的诞生开始回顾一下HTML的历史。


在发明Web的同时,Tim Berners-Lee先生提出了HTML(HyperText Markup Language,超文本标记语言)。1991年,他写了一篇名为“HTML Tags”的文档,其中建议人们使用20来个元素编写网页。



说到用尖括号包围文本的标签,并不是Tim先生的首创。更早的SGML(Standard Generalized Markup Language,标准通用标记语言)中就开始使用这种标签了。Tim先生当时并没有发明新语言,而是着眼于利用已经存在的技术——在HTML5的发展过程中,这个倾向依然得到了体现。


从IETF到W3C:HTML 4诞生记


HTML 1?这个版本实际上是不存在的。最早的HTML官方规范,是由IETF(Internet Engineering Task Force,因特网工程任务组)发布的HTML 2.0。这一规范中的许多特性,都是在已有实现的基础上归纳总结出来的。比如说,1994年居于市场领导地位的Mosaic浏览器提供了一个<img>标签,作者可以通过它在自己的文档中嵌入图像。后来,img元素就出现在了HTML 2.0中。


W3C(World Wide Web Consortium,万维网联盟)继IETF之后成为HTML后续标准的制定者,其官方网站是http://www.w3.org。20世纪90年代中期以后,W3C对HTML进行了几次升级,直至1999年发布HTML 4.01.


此时,HTML的发展走到了一个十字路口上。


XHTML 1:符合XML标准的HTML


HMLT 4.01之后的一个修订版变成了XHTML 1.0。其中,X表示“eXtreme”(极端)。当时的Web开发人员在提到这个字母的时候,必须双臂交叉,作出一个X的形状来。


谁说的?纯属瞎掰。那个X表示的是“eXtensible”(可扩展),而且也没人要求你必须双臂交叉。


XHTML 1.0规范的内容与HTML 4.01完全相同。没有添加任何新元素或新属性。这两个规范唯一的差别就是对HTML的语法作出了不同的规定。HTML给予了作者最大的自由度,他们可以按照自己的意愿去写元素和属性,但XHTML要求作者遵从XML规则;XML是W3C大多数技术规范的基础,是一种更为严格的标记语言。


语法规则变得更严格了,这本身没有什么坏处。新规范的目的就是让作者按照统一的风格来编写标签。此前的标签和属性可以大写、小写,或者任意大小写字母的组合,而有效的XHTML 1.0文档则要求所有标签和属性一律必须小写。


XHTML 1.0发布的时候恰逢浏览器普遍开始支持CSS。开发人员意识到了Web标准的出现,特别是在The Web Standards Project的倡导下,XHTML规定的这种更严格的语法被看成是写标记的一种“最佳实践”。


然后,W3C发布了XHTML 1.1。


虽然XHTML 1.0只不过是用XML来重新表示的HTML,但XHTML 1.1却是真正的、纯粹的XML。这意味着不能以text/html这样的MIME类型来提供XHTML 1.1文档。可是,如果有作者以XML的MIMI类型(application/xhtml+xml)来发布文档,那么当时世界上最流行的Web浏览器——Internet Explorer,又无法呈现该文档。


看起来W3C好像已经开始与日常的Web发布脱节了。


XHTML 2:我们不接受!


如果Dustin Hoffman在电影《毕业生》(The Graduate)中的角色是一名Web设计师,那么W3C只会对他说一句话,就一句话:XML。[1]


W3C在接管HTML的时候,HTML的版本已经到了4。他们就开始开发XHTML 2,旨在把Web引向建立在XML之上的无比光明的美好明天。


虽然XHTML 2的名字听起来与XHTML 1非常类似,但它们的差别却非常之大。与XHTML 1不一样,XHTML 2与既有的Web内容都不兼容,甚至就连以前版本的HTML都不兼容。说白了,XHTML 2就是要成为一门纯粹的语言,与以前规范的邋遢历史没有任何干系。


没想到竟是一场灾难。


分裂:WHATWG TF?


一股反抗势力在W3C内部逐步壮大。W3C热衷于从理论角度构建纯净的标准,却无视Web设计人员的需求。来自Opera、Apple和Mozilla代表对这种倾向非常反感。他们希望那些支持创建Web应用的特性能够得到更多的关注。


2004年的一次工作组会议成为了矛盾激化的导火索。伊恩·希克森(Ian Hickson)——当时还在Opera Software效力——建议扩展HTML,以支持创建Web应用。这个建议被驳回了。


心怀不满的反抗者建立了自己的组织:Web Hypertext Application Technology Working Group,简称WHATWG。


从Web Apps 1.0到HTML5


从一开始,WHATWG的工作方式就与W3C截然不同。W3C采取基于表决的方式:提出议题、讨论议题,然后投票表决。而在WHATWG,同样会提出和讨论议题,但哪些特性可以写入规范的最终决定权在编辑手中。这个编辑就是伊恩·希克森。


表面上看,W3C的流程更民主也更公平。但实际上,政治博弈加上内部争论,经常会导致流程停滞不前。而在WHATWG,任何人都可以自由地发表意见,但负责拍板的则只有编辑一个人,因此工作效率明显高很多。其实编辑也并非拥有绝对的权力:一个仅由受邀人员组成的指导委员会可以质疑编辑的偏执做法。


开始的时候,WHATWG的大部分工作都被分为两个规范:Web Form 2.0和Web Apps 1.0。这两个规范都是以HTML为基础扩展而来的。后来,这两个规范又被合并到一起,简单地称为HTML5。


再次联手


在WHATWG开发HTML5期间,W3C继续制定XHTML 2规范。如果说XHTML 2规范的制定速度很快那是忽悠人的。实际上,别提有多慢了。


2006年10月,Tim Berners-Lee先生发表了一篇博客,承认将Web从HTML迁移到XML是行不通的。几个月后,W3C签发了新委任状,成立了一个HTML工作组。这个工作组并没有从头开始,而是明智地决定在WHATWG工作成果的基础上开发下一个HTML版本。


一套起步停车的动作做下来以后,局面反倒让人不理解了。W3C同时有两个工作组,分别负责制定不同的、互不兼容的标记语言:XHTML 2和HTML 5(注意数字5前面有一个空格)。与此同时,还有一个独立的组织——WHATWG,正在开发HTML5(没有空格)规范,而该规范还将成为上述W3C中一个规范的基础!


每个想稿清楚上述状况的Web设计人员都会发现,还是破解电影《记忆碎片》(Memento)、《雷管》(Primer)中扑朔迷离的故事情节更容易一些,甚至就连摸清大卫·林奇(David Lynch)这样善用颠倒错乱、诡异多变的形象来迷惑人的导演的套路都没有那么复杂。


XHTML已死,XHTML语法长生


种种迷团终于在2009年烟消云散。W3C宣布不再续颁XHTML 2工作组的委任状。XHTML 2作为一种格式实际上已经死了好几年了;这次的宣布差不多可以看成为它补发了一张死亡证明。


奇怪的是,XHTML 2之死并没有平静地过去,不少兴灾乐祸的小人跳出来大放厥词。XML反对者趁机奚落使用XHTML 1的人——连XHTML 1和XHTML 2几乎没有共同点这个事实都视而不见。


这时候,那些遵照XHTML 1较为严格规则的作者又担心起来,生怕HTML5又回到支持邋遢标记的老路上去。


其实,这个担心是多余的。HTML5允许邋邋遢遢的标记,也支持严格的标记,到底邋遢还是严格就要看编写标记的人了。


HTML5的时间线


HTML5目前的状态已经不似先前那么含含糊糊了,但仍然还是不甚明了。


有两个工作组在围绕HTML5工作。WHATWG正在使用它的“提交后评审”流程创建HTML5规范。而W3C HTML 工作组则把这个规范作为输入,并将其纳入到了自己的“评审而后提交”的流程当中。不难想见,这个联盟并不和谐。最后,仍然还需要就类似“要空格还是不要空格?”这样讨厌的问题达成共识才行。


对于刚刚涉足HTML5的Web开发人员来说,最令他们困惑的一个问题莫过于“这个规范什么时候能够完工啊?”


在一次采访中,伊恩·希克森提到HTML5要成为推荐标准,估计要等到2022年。有些Web设计者一听他这么说,立刻就激动起来。他们并不理解所谓的“推荐标准”意味着什么,但他们知道从现在开始数到2022,自己的10根手指头不够用的。


这种激动完全是没有来由的。想一想吧,成为“推荐标准”,意味必须要有两个HTML5的完整实现。考虑到这个规范涵盖的范围之广,这个时间点恐怕都有点仓促了。历史表明,没有哪款浏览器在实现既有标准方面是做得出色的。仅仅支持一个小小的abbr元素,Internet Explorer就用了10多年的时间。


与HTML5真正有关系的日期应该是2012年。这是它预计将会成为“候选标准”的时间。成为“候选标准”,就意味着标准的制定工作结束了。


不过,即便是这个时间对Web开发人员来说也不是特别重要。真正重要的问题是浏览器从什么时候开始支持HTML5的特性。从浏览器一支持CSS 2.1的部分特性,我们就开始使用那些特性了。要是等到所有浏览器都完全支持CSS 2.1,我们才去使用它,那么即使到了今天也仍然还要继续等下去。


HTML5不也一样嘛。没有人规定这个时间点,说不到这个时间你就不能使用HTML5。只要浏览器支持,我们就先使用那些它们支持的特性就不完了吗。


切记,HTML5并不是一门凭空造出来的新语言。它的标记变化都是革新性的,不是革命性的。无论你现在使用哪个版本的HTML创建网站,你都可以说自己已经在使用HTML5了。




[1] 麦奎尔先生对男主角本只说了一句话:塑料。——译者注



原文链接:A Brief History of Markup

该文章在 2011/1/17 12:36:08 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved