关于 HTML5 的七个传说
正如 opera 的布道者 bruce lawson 讲的那样,“每个人都在谈论 html5”,它被传的很神,很玄。事实上有很多人所说的 html5 实际上只是古老的 dhtml 或者 ajax。把所有的信息混在一起就是一堆错误信息。
html5 简单的说就是一组新的标准,语法和规则用来创建网页,可以利用一些新的的“本地”功能,例如离线存储,多媒体播放和其他的交互等等。我们所看到的很多很酷的 html5 网站实际上跟 html5 无关,而是由 css3 和 jquery 生成的。css3 和 jquery 是和 html5 一样的新技术,它们和 html5 是平行的概念。
这篇文章讲了关于 html5 的7个传说,也就是误解 :)
传说 #1:因为苹果不支持 flash,所以人们发明了 html5
树大招风,苹果似乎经常受到各种指责。虽然 html5 可以为移动设备提供一些非常有用的功能,但是它不是为了这个需求而被创造的。事实上,早在2004年,opera 和 mozilla 为了解决乱糟糟的网页标准定义了一些好的设计的标准。他们的目的很简单,就是向 w3c 提交这些标准,从而创建一个更好用,更快速的 html 标准。这个标准直到2006年才被接受。而在短短的三年内,人们又起草了一个新的标准,审议通过并开始使用。
传说 #2:html5 要到2022年才会成熟
我不知道这句话是谁传出来的。我们知道 html5 的起草文件已经在2009年审议通过,也就是没有新的内容可以被添加,也不会有显著的改动。你现在就可以使用 html5 了,并且不用担心向下兼容问题。你可以通过一些轻量级的 javascript 来让老版本的浏览器支持复杂的 canvas 。所有新版本的浏览器支持 html5。你需要担心的不是 html 标签,而是 css。很多老版本的浏览器对 css3 的支持很差。
传说 #3: html5 需要 css3 支持
虽然 css3 能为 html5 增色不少,例如语义 class 名字,但这决不是必须的。html5 只是标记语言,你当然可以使用 html5 + css2,只不过没有那么优雅。由于 html5 移除了属性和标签,所以你需要为每一个元素指定全部的样式。例如,在 html5 中,为了让浏览器正确的渲染页面,你需要为每一个页面元素设置“display:block”声明。简而言之,html5 需要样式来让也页面更好看,但不必须是 css3。
传说 #4:html5 破坏了可访问性(accessibility)
相反,html5 从设计之初就考虑到了可访问性。每一个元素都支持 wia aria 标志角色。这些角色可以让屏幕器这类设备更好的理解页面的内容。
传说 #5:html5 是 flash 杀手
flash 依然被无数的网站和开发者使用。关于 flash 和 html5 之间的误解来源于 adobe 和 apple 之间的争执以及 html5 音频和视频应用的迅速普及。虽然 html5 可以很好的支持少量的视频播放,但是 html5 比 flash 需要更多的编码资源,而且缺少那些浏览器插件提供的技术。目前类似 vimeo 和 youtube 大量的使用 html5 技术是为了这项技术,他们短期内不会彻底放弃 flash。开发者 viki hoo 关于 flash 仍然会广泛的被使用有一些令人信服的观点 。
但是从页面设计的角度来看,我们希望尽快的从 flash 中解脱出来。 html5 学起来用起来都更容易。它不需要插件,装载快速,并且对移动设备很友好。所以不是 html5 干掉了 flash,准确的说是 html5 将统治移动设计和开发市场。
传说 #6:只要在我的网站上添加了 html5 doctype,它就是 html5 网站了
从浏览器的角度来说,是的,添加了 html5 doctype 的网站都会被认为是 html5 网站。但是 html5 不仅仅是一个 doctype。它是一套完整的最佳实践、语义标签、排版元素例如等等。这些元素能让你的网站利用浏览器的新功能,才能称得上是 html5。同时你也要注意那些在 html5 中被弃用的元素和属性,以保证兼容性。