实现更丰富、基于标准的Web
但世人最迫切期待的HTML 5新增方面却是那些新的元素和API,让内容创作者只要使用基于标准的HTML,就能制作丰富多媒体内容。现代网页越来越多地采用可扩展图形、动画和多媒体,但到目前为止,这些功能要求使用Flash、RealMedia和QuikTime等专有插件。这类插件不但带来了新的安全风险,还限制了网页的受众面。
HTML 5解决这个问题的一个办法就是让浏览器原生地支持相关的标记语言。内容创作者可以把用MathML(用于渲染公式)和SVG(用于渲染可扩展矢量图形)编写的标记直接嵌入到HTML 5网页中。这种更强的灵活性让跨平台的HTML比设计当初就既要支持图形又要兼顾文本的Flash和Silverlight等更有竞争力。
不过,Web开发人员对HTML 5新的音频和视频标签的呼声更高,这些标签最终目的是要很容易地把多媒体内容嵌入到网页中。这些标签在HTML 5标准中要求与编解码器无关,这意味着将由浏览器厂商负责提供能播放任何内容所需的编解码器,只要符合一定标准就可以。其中,视频标签尤其被寄予厚望,因为对网上视频提供商来说,它们希望自己的内容未来可以在苹果的iPhone(手机上网)和即将发布的iPad上播放,这两款设备目前都不支持Flash。
画布(Canvas)标签让交互式Web图形向前迈进了一步,该标签可用来把浏览器窗口的某些区域定义为动态位图。Web开发人员可使用JavaScript来处理画布中的内容,针对用户操作实时渲染图形。从理论上来说,这项技术有望让开发人员只要使用JavaScript和HTML,就能开发出完全交互的游戏。
除了这些显示技术外,HTML 5 还引入了基于浏览器的应用缓存概念,应用缓存让Web应用可以把信息存储在客户端设备上。与谷歌Gears 插件一样,这些缓存既提升了应用性能,又可以让用户即便无法连接互联网,也能继续使用Web应用。实际上,谷歌已经计划逐步停止支持Gears,改而支持HTML 5技术。
浏览器插件还没过时
尽管 HTML 5有诸多新特性,但也别指望插件会一夜之间销声匿迹。Web向来就有多种相互竞争的技术与媒体格式共存的传统,且很难克服这种传统的强大惯性。也许很多年以后,纯HTML 5浏览器的性能才赶得上如今各式各样的客户端。
比如,尽管Vimeo和YouTube已经在试用HTML 5 Video标签部署HTML 5多媒体内容,却不会像听上去那么容易。W3C决定不在HTML 5标准中明确规定用哪种特定的媒体编解码器,这意味着开发人员无法保证任何一种媒体格式在每一种客户端设备上都能播放。比如,苹果、谷歌和微软都在力推H.264视频格式,但Firefox和Konqueror等开源浏览器却无法(或者说思想上不愿)把支持这种格式的相应专利权授给别人。除非解决这个问题,否则Web内容创作者要想覆盖最广泛的受众面,可能只好继续依赖Flash。
也并不是每个旧的Web应用都能针对HTML 5进行改写。比如,尽管谷歌低调对待自身的Gears技术,青睐基于标准的本地应用存储方法,但Gears API和HTML 5应用缓存API并不完全一样。谷歌自己承认“目前还没有一种简单、全面的方法可以让具有Gears功能的应用(连同整个用户群)都改用基于标准的方法。”除非真有这种方法,否则连使用完全兼容HTML的浏览器的用户也可能只好安装Gears以支持这些过去开发的Web应用。
最后,对钟情于HTML 5的开发人员来说,浏览器市场份额也许是最大的障碍。尽管IE6存在渲染问题、在Web标准支持方面落后,却似乎仍是不可能马上消失的浏览器。旧版本的 Firefox、Opera、Safari及其他浏览器也有庞大的用户群,而它们中没一个支持HTML 5。除非这些浏览器换成新版,否则Web开发人员可能需要同时维护两个版本的网站:一个面向HTML 5用户的版本,另一个面向依赖过时渲染方法的面向旧浏览器的版本。
苹果的iPhone和iPad青睐HTML 5,不支持Flash,随着HTML 5日趋成熟,预计它们会支持这项标准。与之相似的是,谷歌的Chrome浏览器在支持HTML 5方面一路领先,而基于该公司即将推出的Chrome OS的设备预计会亦步亦趋。不过,各大内容发布网站在标准支持方面一向很保守,就算拥有庞大的HTML 5用户群,财富500强公司可能也在多年以后才愿意冒险升级。