HTML5概述

这是一本关于HTML5编程的书。不过在学习之前,有必要先了解一下背景知识,什么是HTML5?它经历了怎样的发展历程?HTML4和HTML5有什么区别?

本章中,我们会集中讨论大家关注的一些实际问题。为什么是HTML5?为什么它能掀起风潮?是什么设计理念使得HTML5真正具有革命性的进步?HTML5如何在大幅改动的同时保持高度兼容?无插件范式意味着什么?HTML5包含什么,不包含什么?HTML5新增加了哪些特性,为什么能揭开整个Web开发新时代的序幕?下面我们一起来了解一下。

1.1 HTML5发展史

HTML的历史可以追溯到很久以前。1993年HTML首次以因特网草案的形式发布。20世纪90年代的人见证了HTML的大幅发展,从2.0版,到3.2版和4.0版(一年出了两个版本),再到1999年的4.01版。随着HTML的发展,W3C(万维网联盟)掌握了对HTML规范的控制权。

然而,在快速发布了这四个版本之后,业界普遍认为HTML已经到了穷途末路,对Web标准的焦点也开始转移到了XML和XHTML上,HTML被放在了次要位置。不过在此期间,HTML体现了顽强的生命力,主要的网站内容还是基于HTML的。为能支持新的Web应用,同时克服现有缺点,HTML迫切需要添加新功能,制定新规范。

致力于将Web平台提升到一个新的高度,一小组人在2004年成立了WHATWG(Web Hypertext Application Technology Working Group,Web超文本应用技术工作组)。他们创立了HTML5规范,同时开始专门针对Web应用开发新功能——这被WHATWG认为是HTML中最薄弱的环节。Web 2.0这个新词也正是在那个时候被发明的。Web 2.0实至名归,开创了Web的第二个时代。旧的静态网站逐渐让位于需要更多特性的动态网站和社交网站——这其中的新功能真的是数不胜数。

2006年,W3C又重新介入HTML,并于2008年发布了HTML5的工作草案。2009年,XHTML2工作组停止工作。又过了一年,也就到了现在。因为HTML5能解决非常实际的问题(随后可以看到),所以在规范还未定稿的情况下,各大浏览器厂家就已经按耐不住了,开始对旗下产品进行升级以支持HTML5的新功能。这样,得益于浏览器的实验性反馈,HTML5规范也得到了持续地完善,HTML5以这种方式迅速融入到了对Web平台的实质性改进中。

HTML的过去和未来

“大家好,我是Brian,HTML的铁杆老粉丝。

1995年,我创建了第一个属于自己的个人主页。那时候的‘主页’就是用来介绍自己的。上面的照片通常不清晰,代码中用了很多标签,页面上会告诉大家我住在哪儿,读过什么书,正在做什么跟计算机相关的工作。我和我的那些所谓‘万维网开发者’不是在大学里读书就是在大学里工作。

那时候的HTML非常初级,没有任何工具可用。Web应用几乎没有,顶多有少量的文本处理脚本。页面代码都是用大家各自喜欢的文本编辑器写出来的。页面的更新频率基本上是数周或者数月。

不知不觉,我们已经走过了漫长的15个年头。

今天,用户对其在线资料一天更新很多次已经是很平常的事了。当然,如果没有在线工具持续稳定的更新换代,也不会有今天这样的交互方式。

提醒各位读者,大家在看这本书的时候心里要明白,我们的示例虽然现在看起来非常简单,但潜力是巨大的。就像20世纪90年代中期那些率先使用标签的人一样,他们又怎么会知道在10年以后,很多人都已经在线编辑和储存照片了;而我们要有这种前瞻性。

我们希望书中示例的基本思路能够激发读者无穷的创意,从而为Web的下个10年奠定新的基础。”

——Brian

1.2 关于2022年的那个神话

今天,我们看到的HTML5规范已经以工作草案的形式发布了——还不是最终版。那什么时候HTML5规范才能尘埃落定呢?现在就来了解一下几个关键时间点。第一个时间点是2012年,目标是发布候选推荐版。第二个时间点是2022年,目标是发布计划推荐版。哦!那等着吧,还早着呢!可能大家会这么想,然后就把书合上,扔到一边,等10年后再说。那就大错特错了,在明白这两个时间点的真正意义之前,可别急着下结论。

第一个,也就是最近的2012年,可以说是最重要的时间点,因为这个时间点一到就意味着HTML5规范编写完成了。想象一下,这并不久远,也就两年后的事情。计划推荐版(普遍认为距今还有点远)的重要性在于届时将会有两个对HTML5的互通实现,意味着将有两个浏览器会完全支持整个HTML5规范的所有功能——这个远大的目标让2022年这个时间点看起来又似乎太近了。毕竟,现在连HTML 4都还没有实现这个目标呢。

关键是现在浏览器厂家已经着手支持HTML5中很多优秀的新功能了

简要概述html5的设计宗旨,HTML5程序设计(第2版) 第一章:HTML5概述.doc相关推荐

  1. 谭浩强c语言程序设计第五版---第一章

    5.编写程序,输出平行四边形**** (1) #include<cstdio> int main(){int i,j,k;for(i=0;i<4;i++){//确定形状的关键代码 f ...

  2. 第一章 HTML5基础

    第一章 HTML5基础 什么是前端开发? 以一个网站为例包括网站设计.前端开发.程序开发 等.网站设计就是网站的外观,平面的东西.程序开发也 好理解就是功能实现.而前端开发,简单来说,就是把 平面效果 ...

  3. 【JUC】第一章 JUC概述、Lock 接口

    第一章 JUC 概述.Lock 接口 文章目录 第一章 JUC 概述.Lock 接口 一.JUC 概述 1.什么是 JUC 2.线程和进程概念 3.线程的状态 4.并发与并行 5.管程 6.用户线程和 ...

  4. 第一章 分布式计算概述

    第一章 分布式计算概述 一.分布式计算的概念 分布式计算是计算机科学的重要研究内容,主要研究对象是分布式系统.简单地说,一个分布式系统是由若干通过网络互连的计算机组成的软硬件系统,且这些计算机互相配合 ...

  5. Python入门到精通【精品】第一章 - Python概述

    Python入门到精通[精品]第一章 - Python概述 1. Python语言历史 2. Python语言特点 3. Python的下载和安装 3.1. Python的下载 3.2. Python ...

  6. 第一章 人机交互概述

    第一章 人机交互概述 1.1 人机交互的概念 1.1.1 为什么要研究人机交互 ​ 提高人们工作效率,使人们的工作生活更加简洁,更加方便 1.1.2 什么是人机交互 ​ 人机交互(HCI)是关于设计. ...

  7. 第一章Python概述

    第一章Python概述 一.基本概念 1.IDLE:(Integrated Development and Learning Environment)集成开发和学习环境,是Python的集成开发环境. ...

  8. 「武汉理工大学 软件工程复习」第一章 | 软件工程概述

    目录 第一章 | 软件工程概述 [软件的特性] [软件危机] [软件工程] [软件开发基本策略(要素)] [软件工程基本原理] [单元测试题] 选择题 判断题 第一章 | 软件工程概述 [软件的特性] ...

  9. 第一章 MongoDb概述

    版本修改历史 版本 修改内容 修改人 日期 1.0 创建文档 李乐 2010-6-30 第一章 MongoDb概述 集文档数据库,键值对存储和关系型数据库的优点于一身. MongoDB (名称来自&q ...

最新文章

  1. html游戏键盘控制,键盘控制方块移动.html
  2. 项目通用环境使用说明
  3. Exception in thread main java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
  4. 关于oracle sql developer乱码的问题
  5. 更改mssqlserver的表的编码格式_Excel格式全揭秘,赶紧收藏起来吧
  6. Linux入门基础思维导图
  7. 使用Oracle Data Integrator(和Kafka / MapR流)完善Lambda体系结构
  8. python列表元素之和_python实现计算列表元素之和
  9. iterator adapter inserter
  10. 解决git clone时报错fatal: HTTP request failed
  11. scala和java集合的区别_Scala中Array和List的区别
  12. excel 2003 VBA编程入门教程
  13. Python爬虫:数据存储——TXT文本文件
  14. Java获取照片EXIF信息
  15. 【冬瓜哥归来】传统存储老矣,新兴存储能当大任否?
  16. 启动优化 · 基础论 · 浅析Android启动优化
  17. 饿狼传说 | 千锋JavaScript教程千呼万唤已出来
  18. 小白最需要了解的计算机基础知识
  19. 《计算机网络--自顶向下方法》第三章--运输层
  20. Storm示例剖析-fastWordCount

热门文章

  1. 34. Find First and Last Position of Element in Sorted Array
  2. ArcGIS Server 中AJAX应用系列(3)
  3. STM32之DMA原理
  4. 方程组的直接解法和迭代法 python_基于任务驱动的翻转课堂线上教学 ——以《解二元一次方程组复习课》为例...
  5. Dubbo的设计理念原来就藏在这三张图中
  6. 蚂蚁集团技术专家山丘:性能优化常见压测模型及优缺点
  7. autopoi升级到4.0版本修改方法
  8. MiniDao1.8.3 版本发布,轻量级Java持久化框架
  9. hadoop--HDFS搭建客户端API环境
  10. hadoop--集群配置/群起集群