HML5+CSS3权威指南 第一章 HTML5时代即将来临! 第四节 HTML5所要解决的三个问题
HTML5的出现,对于Web来说意义是非常重大的。因为它的意图是想要把目前Web上存在的各种问题一并解决掉,是一个企图心比较强的HTML版本。
那么,到底是哪些问题,HTML5又打算怎么解决呢?
● 问题1:Web浏览器之间的兼容性很低
首先要提到的就是,Web浏览器之间的兼容性是非常低的。在某个Web浏览器上正常运行的HTML/CSS/JavaScript等等Web程序,在另一个Web浏览器上就不正常了的事情是非常多的。
如果用一句话来描述这个问题的原因,可以说是“规范不统一”。规范不统一,没有被标准化,是这个问题的主要原因。
在HTML5中,这个问题将得到解决。他的使命是详细分析各Web浏览器所具功能,然后以此为基础,要求这些浏览器所具功能符合一个统一的标准规范。
如果各浏览器都符合标准规范,然后以标准规范为基础来书写程序,那么程序在各浏览器都能正常运行的可能性就大大提高了,这对于Web开发者和Web设计者都是一件令人可喜的事情。而且,今后开发出来的Web功能只要符合规范,Web浏览器也是很愿意封装该功能的。
● 问题2:文档结构不够明确
第二个问题是,在之前的HTML版本中,文档的结构不够清晰、明确。
例如,为了要表示“标题”,“正文”,之前一般都是用<div>元素。但是,严格说来,<div>不是一个能把文档结构表达得很清楚的元素,使用了过多的<div>要素的文章,当阅读的时候,不仔细研究,是很难看出文档结构的。
而且,对于搜索引擎或屏幕阅读器等程序来说,过多使用了div元素,那么这些程序就连“从哪到哪算是重要的正文”,“这个<ul>要素是表示导航菜单,还是表示项目列表”也不知道。
在HTML5中,为了对应这个问题,追加了很多跟结构相关的元素(称为“语义化元素”)。不仅如此,Web文档的残疾人辅助功能(WAI-ARIA),明确表示文档中所嵌数据的含义的功能(Microdata)等等,结合了各种各样的周边技术。
● 问题3:Web应用程序的功能受到限制
最后一个问题是,与Web应用程序的关系十分薄弱。Web应用程序的特征是先从网络下载下来,然后忠实运行,因此应该对会威胁到用户安全的功能进行限制。
但是虽然这方面是做到了,但另一方面HTML一直以来能够帮助到Web应用程序的地方是很少的,就连上传文件时想同时选择一个以上的文件都做不到。
为了弥补这方面的不足,HTML5开始已经提供了各种各样Web应用上的新的API,各浏览器也在快速地封装着这些API,HTML5已经使富 Web 应用的实现变成了可能。