关于 HTML5,开发者可以期待什么?

Web 开发者对 HTML5 的期待越来越强烈,作为一个以文档为中心的置标协议,HTML 越来越不能满足现代 Web 应用的需要,何况,这个协议已经有超过 10 年没有更新了。HTML5 旨在解决 Web 中的交互,媒体,本地操作等问题,一些浏览器已经尝试支持 HTML5 的一些功能,而开发者们有望最终从那些 Web 插件中得到解脱

不过,需要指出的是,尽管一些重量级 Web 技术厂家,象 Apple,Google, Mozilla 基金会, Vimeo,YouTube 已经开始支持这个新标准,但W3C 表示,HTML5 前面的路还很长,它的一些细则目前还存在争议,主流的 Web 在转至 HTML5 之前还要经过很长的时间,而开发者们也不得不面临两难的境地,就是如何使用现在的技术设计出富 Web 应用,同时又为今后的 HTML5 做好准备。

富 Web 的现代 HTML

富 Web 应用和 HTML 之间并不般配,Web 之父 Tim Berners-Lee 这样看待 HTML,它是一种用来创建平台独立的超文本文档的置标语言,随着 XHTML 的诞生,W3C 也将网页视为文档。

这样那些视 Web 为应用平台的开发者十分恼火,2004年,Apple, Mozilla 基金会和 Opera 成立了一个超文本应用技术工作组(WHATWG),寻求创建一个 W3C 之外的标准组织,以打造一个更适合应用的 Web。

2007年,他们的 XHTML2 陷入永无止境的纷争之中,后来,W3C经投票决定吸纳 WHATWG 的工作成果,并作为 HTML5 的标准,这时,即使 Tim Berners-Lee 也对面向应用的 Web 伸出橄榄枝,他说,现在看来,我们面向 XML 所做的那些努力是无效的。

这并非说纯净的 XML 语法已死,虽然 HTML 的发展方向已改,但在 HTML5 发展的同时,XHTML5 也在同步进行中,区别在于,XHTML 将适用于那些已经向 XML 转换的人,而对于普通开发者,则不一定使用 XHTML。

HTML5: 标签的改变

HTML5 吸取了 XHTML 2 的一些建议,包括一些用来改善文档结构的功能,比如,新的 HTML 标签 header, footer, dialog, aside, fugure 等的使用,将使内容创作者更加语义地创建文档,之前的开发者在这些场合是一律使用 div 的。

HTML5 还包含了一些将内容和展示分离的努力,开发者们也许会惊讶,b 和 i 标签依然存在,但它们的意义已经和之前有所不同,这些标签的意义只是为了将一段文字标识出来,而不是为了为它们设置粗体或斜体式样。 u,font,center,strike 这些标签则被完全去掉了。

新标准适用了一些全新的表单输入对象,包括日期,URL,Email 地址,其它的对象则增加了对非拉丁字符的支持。HTML5 还引入了微数据,一种使用机器可以识别的标签标注内容的方法,使语义 Web 的处理更为简单。总的来说,这些与结构有关的改进使内容创建者可以创建更干净,更容易管理的网页,这样的网页对搜索引擎,对读屏软件等更为友好。

实现基于标准的富Web

然而,HTML5 最令人振奋的是那些让开发者们实现富应用的新 API,诸如图形,动画,多媒体,在HTML5 之前,这些功能的实现需要 Flash,RealMdeia,QuikTime 一类的插件,这些插件技术不仅容易带来安全隐患,而且它的受众是受限的。

HTML5 通过使用相应的置标语言解决了这些问题,内容创建者可以使用类似 MathML 以及 SVG 之类的语言实现数学公式和图形的创建,这些语言比 Flash, Silverlight 一类的格式更容易跨平台使用。

Web 开发者们更会为 HTML5 的 audio 和 ideo 标签欢呼,这些标签让 Web 页面轻松实现媒体的嵌入,它们的编码标准是中立的,意味着浏览器厂商可以自己使用何种编码输出媒体,而它的 video 标签更将使那些不支持 Flash 的移动浏览器获益匪浅。

Canvs 标签会让交互式 Web 图形更上层楼,开发者可以使用 JavaScript  操作 canvas 中的对象,实现实时的交互式图形操作,甚至实现交互式游戏。除了这些可以看到的变化,HTML5 还引入基于浏览器的程序缓存,将应用数据在本地缓存(就像之前的 Google Gears 插件),这不仅能加速 Web 程序的运行,还可以使一些程序在离线时仍可使用。事实上,Google 现在慢慢取消对 Gears 的支持,全面转向 HTML5。

浏览器插件:还不至于死

尽管 HTML5 推出了这么多新功能,但不要指望那些插件会一夜消失,纯粹的 HTML5 要实现目前这个插件世界的全部功能还要很长的时间,更不要说那些需要继续支持的旧系统。比如,虽然 Vimeo 和 YouTube 已经开始使用 video 标签输出视频,然而事情并不是那么简单,W3C 还没有确定使用何种编码方案,这意味着,那些视频并不能保证在任何设备上都能看。比如 Apple, Google 以及微软都主推 H.264 编码,而开源的 Firefox 则不愿意,因为存在许可问题。

另外,并不是所有旧系统都会以 HTML5 重写,比如,尽管 Google 自己都不再看好 Google Gears 而主推 HTML5,但 Gooel 承认,HTML5 并不能实现 Google Gears 的全部功能,将基于 Google Gears 的应用转换为纯 HTML5 是不可能简单实现的。

最后,五花八门的浏览器也会阻碍 Web 开发者们向 HTML5 转移,IE6,旧版本的 Firefox,Opera,Safari 都不支持 HTML5,因此,除非,绝大多数人的浏览器都升级到最新状态,否则,面向 HTML5 的开发仍将面临各种困境。

早期采用者

尽管微软已经表示,IE9 会支持 HTML5,但他们对此事也抱谨慎态度,微软认为, 在 HTML5 标准都未确立的今天,说自己的浏览器支持多数 HTML5 功能是不妥的。事实上,任何组织都不可能比 W3C 更清楚 HTML5 的进度,而 W3C 认为,HTML5 标准仍未成熟,功能确立要到2011年前才能完成,即使到了那时,将这些东西确立为标准也需要到2022年,也就是说,XHTML1.1 到 HTML5 大约要15年。

不管怎么说,HTML5 将是未来 5 到 10 年最前沿的技术,那些早期采用这可以在网络中找到大量的体验站点,目前,体验 HTML5 的最好浏览器是那些基于 Webkit 引擎的浏览器,如 Chrome 和 Safari,Firefox 不太流畅。Web 开发者们可以使用目前的 HTML5 草案创建试验站点,当然在当前浏览器分布体系下,还会有些问题,线上最好的 HTML5 开发资源是 Mark Pilgrim's excellent Dive into HTML5

HTML5 体验站点

Mozilla Bespin An in-browser programmer's editor written using HTML technologies
YouTube YouTube's HTML5 player offers experimental HTML5 support
Vimeo Vimeo movies offer a link at the bottom for switching to an HTML5 player (Chrome, Safari, IE+Chrome Frame)
Merge Design An HTML5 geolocation demo
Sticky Notes A demonstration of HTML5 client-side storage
Wolfenstein 3D Demo using the canvas tag (with how-to) -- works in Firefox 3.6
ClouserW Soundboard An HTML5 sound board showing off multimedia capabilities
Google Wave Google Wave relies on HTML5 for some of its features
FreeCiv

A game implemented in HTML5

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Js正则表达式过滤特殊字符、表情的实例代码: let ret = "12312ffds#¥@¥#%^***(()))*)).`@%@¥@¥", val = this.customDeviceName;//特殊字符过滤let pattern = new RegExp("[`~!@#$^*()=|{}':;',\\[\\]./?~!@#¥……*()——|{}【】‘;:”“'。,、?]
1、htmlshiv.js Remy开发的HTML5shiv工具能利用JavaScript在老式IE里创建main,header,footer等HTML5元素。也就是说使用JavaScript能创建这些本来不存在的HTML5新元素。这是什么原理?你可能花几天也想不明白,但谁在意呢!这个脚本几乎是所有正式网站必用
HTML5 火的正热,最近有个想法也是要用到HTML的相关功能,所以也要好好学习一把。 好好看了一下Canvas的功能,感觉HTML5在客户端交互的功能性越来越强了,今天看了一下Canvas绘图,下边是几个实例,记下以备后用。 1、使用Canvas绘制直线: !doctype html ht
响应式布局,理想状态是,对PC/移动各种终端进行响应。媒体查询的支持程度是IE9+以及其他现代的浏览器,但是IE8在市场当中仍然占据了比较大量的市场份额,使我们不得不进行IE低端浏览器的考虑。那么如何在IE6~8浏览器中兼容响应式布局呢?这里我们需要借助这
近日,微软宣布开源Chakra的核心组件。Chakra是微软新一代浏览器 Microsoft Edge的JavaScript引擎。相关代码将于2016年1月上传到微软的GitHub账号,项目名称为 ChakraCore,遵循MIT许可协议。 ...,HTML5中国,中国最大的HTML5中文门户。
这篇文章报道的不是“新闻”,因为W3C早已开始着手CSS变量方面的工作。至于Google,则要追溯到11月初,当时该公司主要开发人员之一的Addy Osmani宣布了率先在Chrome Canary中引入对CSS变量的支持。 ...,HTML5中国,中国最大的HTML5中文门户。