前言
HTML 5如同一场革命,正在Web2.0后时代轰轰烈烈的进行着。
HTML 5是什么,无须我在这里赘述了。对于HTML 5的革新,按我的理解,可以总结为语义明确的标签体系、化繁为简的富媒体支持、神奇的本地数据存储技术、不需要插件的富动画(canvas)、强大的API支持。总之,HTML 5让人机交互,人网交互变得更加舒适,贴合用户。以往对富媒体应用与本存储的支持乏力也不再是浏览器的切肤之痛。将Web从内容平台推向标准化的应用平台,并一统各在平台阵营的标准,才是HTML 5革命的初衷。
本文,我就抛砖引玉,阐述HTML 5的革新之一:语义更明确简洁的结构。
从”头”说起
一个标准的XHTML头部代码应该是这样:
你能记住吗?你会去死记硬背吗?当然不会!我们只需要机械的复制粘贴即可。
再看看一个标准的HTML 5头部是如何的:
孰繁孰简,就不用我说了。是的,HTML 5的头部可以如此简单,可以轻易的记住!并且,可以忽略大小写,引号以及最后一个尖括号前的反斜线。
为什么可以如此松散?其实,如果把XHTML当成text/html发送,浏览器一样可以很好的解析,浏览器并不在乎代码的语法。所以,HTML 5是形而上的,它可能会破坏原有的一些标准,但仍可在浏览器中很好的表现。
当然,为了团队协助与后续维护的方便,我们还是应该统一一种你喜欢的风格的写法,比如:
另外,HTML 5虽然目前并不为所有浏览器所支持,但这个能省去100多字节(对于日PV百万级以上的站点,能省下不少的流量哦)的头部已可以完美的兼容了。如果你对浏览器解析模式有研究的话,你应该知道,页面在没有定义doctype的情况下会触发怪异模式,而只要定义了<!doctype html>浏览器就可以在标准模式下解析页面,而不需要指定某个类型的DTD。