1.2 HTML5简介
HTML5不仅仅是HTML规范的最新版本,它还是一系列用来制作现代富Web内容的相关技术的总称。后面各章将会介绍这些技术,其中最重要的三项技术是HTML5核心规范、CSS(Cascading Style Sheets,层叠样式表)和JavaScript。
HTML5核心规范定义用以标记内容的元素,并明确其含义。CSS可用于控制标记过的内容呈现在用户面前的外貌。JavaScript则可以用来操纵HTML文档的内容以及响应用户的操作,此外要想使用HTML5新增元素的一些为编程目的设计的特性也需要用到JavaScript。
提示
看不懂上面说的这些东西不要紧。我会分别在第3章、第4章和第5章专门介绍HTML元素、CSS和JavaScript。
有些人(那些挑剔、执拗、爱钻牛角尖的人)会说HTML5所指的只是HTML元素。别管他们。这些人看不出Web内容的本质所发生的根本性变化。用于网页的各种技术之间的关联已经变得如此紧密,以致于需要通晓这些技术才能制作Web内容。如果只使用HTML元素,不用CSS,这样制作出来的内容会让用户觉得不便阅读。如果用了HTML和CSS,但不用JavaScript,那就无法为用户的操作提供即时反馈,也无法使用HTML5中的一些高级特性。
1.2.1 新标准
为了应对漫长的标准化过程以及标准落后于常见用法的情况,HTM5及其相关技术是作为一系列小型标准而制定的。其中有些标准只有区区几页,涉及的只是某项特性中一个高度细化的方面。当然,其他一些标准仍然有密密麻麻的几百页,涵盖了相关功能的所有方面。
这样做的目的是让较小的团体可以合作设计和将对他们较为重要的特性标准化,争议较少的特性可以先标准化,不必受围绕其他特性发生的争论的拖累。
这个办法有利也有弊。好处是可以加快标准制定步伐。主要的弊端在于难以全面掌握制定中的各个标准的情况以及这些标准之间的关系。技术规范的质量也有所下降。有些标准中存在着一些歧义,致使浏览器中的实现出现了不一致的情况。
最大的不足之处大概要算没有一条可用来评估HTML5达标情况的基准线。我们现在还处于初始阶段,但是不能指望用户可能用到的所有浏览器都实现了要用的特性。因此采用HTML5中的特性是件复杂的事情,需要仔细评估相关标准得到支持的情况。W3C公布过一个正式的HTML5徽标(如图1-1所示),但是它并不代表对HTML5标准及相关技术的全面支持。
图1-1 W3C的正式HTML5徽标
1.2.2 引入原生多媒体支持
HTML5的一大改进就是支持在浏览器中直接播放视频和音频文件(也就是说不借助于插件)。这是W3C对插件风靡现象的一种反应。原生(native)多媒体支持再结合其他HTML特性可望大有作为。这些特性将在第34章介绍。
1.2.3 引入可编程内容
HTML5最大的变化之一是添加了canvas元素(第34章和第35章会有介绍)。这个元素是对插件现象的另一反应,它提供了一个通用的绘图平面,开发人员可以用它完成一些通常用Adobe Flash来完成的任务。
这个特性之所以重要,部分原因在于要使用canvas元素就必须用到JavaScript。编程从而成了HTML文档中第一层次的事情,这是一个重大转变。
1.2.4 引入语义Web
HTML5引入了一些用来分开元素的含义和内容呈现方式的特性和规则。这是HTML5中的一个重要概念,详见第6章。这个主题在本书中将多次论及,它标志着HTML在走向成熟的道路上又迈上了一个新台阶,反映出制作和使用HTML内容的方式的多样性。这个变化(它逐步体现在之前的HTML版本中)稍稍增加了Web开发者的负担,这是因为开发者需要先标记内容然后再定义其呈现方式。不过有些实用的新改进可以减轻这种负担。