2014年10月29日,W3C宣布,经过接近8年的艰苦努力,HTML5标准规范终于制定完成。

HTML5将会取代1999年制定的HTML 4.01、XHTML 1.0标准,使网络标准达到符合当代的网络需求,为桌面和移动平台带来无缝衔接的丰富内容。

HTML5 的新特性

① 语义特性(Semantic)

HTML5赋予网页更好的意义和结构。

② 本地存储特性(OFFLINE & STORAGE)

基于HTML5开发的网页APP拥有更短的启动时间,更快的联网速度,这些全得益于HTML5 APP Cache,以及本地存储功能。

③ 设备访问特性 (DEVICE ACCESS)

从Geolocation功能的API文档公开以来,HTML5为网页应用开发者们提供了更多功能上的优化选择,带来了更多体验功能的优势。HTML5提供了前所未有的数据与应用接入开放接口。使外部应用可以直接与浏览器内部的数据直接相连,例如视频影音可直接与microphones及摄像头相联。

④ 连接特性(CONNECTIVITY)

更有效的连接工作效率,使得基于页面的实时聊天,更快速的网页游戏体验,更优化的在线交流得到了实现。HTML5拥有更有效的服务器推送技术,Server-Sent Event和WebSockets就是其中的两个特性,这两个特性能够帮助我们实现服务器将数据“推送”到客户端的功能。

⑤ 网页多媒体特性(MULTIMEDIA)

支持网页端的Audio、Video等多媒体功能, 与网站自带的APPS,摄像头,影音功能相得益彰。

⑥ 三维、图形及特效特性(3D, Graphics & Effects)

基于SVG、Canvas、WebGL及CSS3的3D功能,用户会惊叹于在浏览器中,所呈现的惊人视觉效果。

⑦ 性能与集成特性(Performance & Integration)

没有用户会永远等待你的Loading——HTML5会通过XMLHttpRequest2等技术,解决以前的跨域等问题,帮助您的Web应用和网站在多样化的环境中更快速的工作。


下面分别对这七个新特性进行研究:

① 语义特性(Semantic)

  HTML4中的内容标签级别相同,无法区分各部分内容。

  而HTML5中的内容标签互相独立,级别不同,搜索引擎以及统计软件等均可快速识别各部分内容。

  这些标签在新闻类网站,博客类网站很有用。

  最大的问题就是当使用这些新的语义元素时,那些不支持的浏览器如何处理这些元素。

② 本地存储特性(OFFLINE & STORAGE)

  HTML5提供了网页存储的API,方便Web应用的离线使用。除此之外,新的API相对于cookie也有着高安全性,高效率,更大空间等优点。

  HTML5离线存储包含 应用程序缓存本地存储索引数据库文件接口

 (1)应用程序缓存(Application Cache)

    应用程序缓存为应用带来三个优势:

    离线浏览 – 用户可在应用没有因特网连接时进行访问。

    速度 – 已缓存资源加载得更快。

    减少服务器负载 – 浏览器将只从服务器下载更新过或更改过的资源。

    Demo链接:http://www.ganecheng.tech/welcome_offline.html

 (2)本地存储(Local Storage)

    最早的Cookies自然是大家都知道,问题主要就是太小,大概也就4KB的样子,而且IE6只支持每个域名20个cookies,太少了。优势就是大家都支持,而且支持得还蛮好。

    首先自然是检测浏览器是否支持本地存储。

    在HTML5中,本地存储是一个window的属性,包括localStorage和sessionStorage。

    从名字应该可以很清楚的辨认二者的区别,前者是一直存在本地的,后者只是伴随着session,窗口一旦关闭就没了。二者用法完全相同。

 (3)索引数据库(Indexed DB)

   IndexedDB则更适合存储如广告等数据(它更象一个真正的数据库)。

    一般来说,有两种不同类型的数据库:关系型和文档型(也称为NoSQL或对象)。

    关系数据库如SQL Server,MySQL,Oracle的数据存储在表中。文档数据库如MongoDB,CouchDB,Redis将数据集作为个体对象存储。

    IndexedDB是一个文档数据库,它在完全内置于浏览器中的一个沙盒环境中(强制依照(浏览器)同源策略)。

    如果您的应用程序真正需要一个客户端数据库,你想要达到的最高级别的采用可能,当IndexedDB不可用时,

    也许您的应用程序可能看起来需要选择使用Web SQL来支持客户端数据架构。

 (4)文件接口(File API)

③ 设备访问特性 (DEVICE ACCESS)

  大致包含 地理位置API ,媒体访问API ,访问联系人及事件设备方向

    比如说:地理定位、获取麦克风、摄像头、获取重力感应、摇一摇功能……

④ 连接特性(CONNECTIVITY)

  HTTP是无连接的,一次请求,一次响应。想要实现微信网页版扫一扫登录,网页版微信聊天的功能,需要使用轮询的方式达到长连接的效果,

    轮询的大部分时间是在做无用功,浪费网络,浪费资源。

    现在HTML5为我们带来了更高效的连接方案 Web Sockets 和 Server-Sent Events 。

⑤ 网页多媒体特性(MULTIMEDIA)

  看的出来HTML5原生支持音视频让W3C很兴奋。也是广大开发者多年的期待。终于可以将Flash踹入茅坑了。

    Audio和Video标签

⑥ 三维、图形及特效特性(3D, Graphics & Effects)

  大致包含SVG(可缩放的矢量图形), Canvas(画布), WebGL(网页图形库,3D绘图标准), 和 CSS3 3D。

   Canvas 与 SVG 的比较

   Canvas 
    -依赖分辨率 
    -不支持事件处理器 
    -弱的文本渲染能力 
    -能够以 .png 或 .jpg 格式保存结果图像 
    -最适合图像密集型的游戏,其中的许多对象会被频繁重绘

   SVG 
    -不依赖分辨率 
    -支持事件处理器 
    -最适合带有大型渲染区域的应用程序(比如谷歌地图) 
    -复杂度高会减慢渲染速度(任何过度使用 DOM 的应用都不快) 
    -不适合游戏应用

⑦ 性能与集成特性(Performance & Integration)

   性能与集成特性主要包括两个东西,Web Workers (网页后台任务)和 XMLHttpRequest 2(新的Ajax)

参考链接:

  http://blog.csdn.net/gane_cheng/article/details/52819118

  

浅谈HTML5的新特性的更多相关文章

  1. 浅谈html5及其新特性

    什么是 HTML5? HTML5 将成为 HTML.XHTML 以及 HTML DOM 的新标准. HTML 的上一个版本诞生于 1999 年.自从那以后,Web 世界已经经历了巨变. HTML5 仍 ...

  2. 浅谈PHP7的新特性

    我以前用过的php的最高版本是php5.6.在换新工作之后,公司使用的是PHP7.据说PHP7的性能比之前提高很多.下面整理下php7的新特性.力求简单了解.不做深入研究. 1.变量类型声明 函数的参 ...

  3. 浅谈HTML5单页面架构(二)——backbone + requirejs + zepto + underscore

    本文转载自:http://www.cnblogs.com/kenkofox/p/4648472.html 上一篇<浅谈HTML5单页面架构(一)--requirejs + angular + a ...

  4. 浅谈html5网页内嵌视频

    更好的阅读体验:浅谈html5网页内嵌视频 如今在这个特殊的时代下:flash将死未死,微软和IE的历史问题,html5标准未定,苹果和谷歌的闭源和开源之争,移动互联网的大势所趋,浏览器各自为战... ...

  5. AngularJS进阶(二十五)requirejs + angular + angular-route 浅谈HTML5单页面架构

    requirejs + angular + angular-route 浅谈HTML5单页面架构 众所周知,现在移动Webapp越来越多,例如天猫.京东.国美这些都是很好的例子.而在Webapp中,又 ...

  6. 浅谈测试rhel7新功能时的感受及遇到的问题【转载】

    半夜起来看世界杯,没啥激情,但是又怕错误意大利和英格兰的比赛,就看了rhel7 相关新功能的介绍. rhel7的下载地址: https://access.redhat.com/site/downloa ...

  7. 浅谈html5 video 移动端填坑记

    这篇文章主要介绍了浅谈html5 video 移动端填坑记,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 本文介绍了html5 video 移动端填坑记,分享给大家,具体 ...

  8. Atitti html5 h5 新特性attilax总结

    Atitti html5 h5 新特性attilax总结 Attilax觉得不错的新特性 3.语义Header和Footer (The Semantic Header and Footer) 8.占位 ...

  9. Atitit html5.1 新特性attilax总结

    Atitit html5.1 新特性attilax总结 9. 嵌入 header 和 footer1 7. 校验表单1 6. 浏览器的上下文菜单2 1. 响应式图像2 Attilax觉得还不错的心特性 ...

随机推荐

  1. opacity兼容性问题

    用来设定元素透明度的 Opacity 是CSS 3里的一个属性.当然现在还只有少部分浏览器支持. 不过各个浏览器都有自己的私有属性来支持,其中包括老版本的Mozilla和Safari: IE: fil ...

  2. ESA2GJK1DH1K升级篇: STM32远程乒乓升级,基于GPRS模块(Air202,SIM800)AT指令TCP透传方式,MQTT通信控制升级

    实现功能概要 这节和上一节的功能一样(只不过上节是利用Wi-Fi模块,这节是利用GPRS模块) 用户程序里面加入MQTT通信,执行用户程序的时候, 通过接收MQTT的升级命令实现升级. 凡是可以实现M ...

  3. 凤翔中学高三数学[备课&作业]

    #tab{ font-size:22px ;font-family:楷体;text-align:center;} a:link { text-decoration: none;} 凤中2020届高三文 ...

  4. 详细讲解redis数据结构(内存模型)以及常用命令

    Redis数据类型 与Memcached仅支持简单的key-value结构的数据记录不同,Redis支持的数据类型要丰富得多,常用的数据类型主要有五种:String.List.Hash.Set和Sor ...

  5. 在非gnome系桌面环境下运行deepin-wine tim的错误解决

    本文通过MetaWeblog自动发布,原文及更新链接:https://extendswind.top/posts/technical/deepin_wine_run_in_not_gnome_desk ...

  6. kali linux 更换镜像源

    编辑sources.list文件 leafpad /etc/apt/sources.list #aliyun 阿里云 deb http://mirrors.aliyun.com/kali kali-r ...

  7. centos7 中没有service iptables save指令来保存防火墙规则

    解决方法: systemctl stop firewalld  关闭防火墙yum install iptables-services 安装 iptables 服务systemctl enable ip ...

  8. 执行git log/status等命令时,重新打开了个窗口,必须按q才能退出

    终端运行: git config --global core.pager ''

  9. PostgreSQL的pg_hba.conf文件讲解

    pg_hba.conf为PostgreSQL的访问策略配置文件,默认位于/var/lib/pgsql/10/data/目录(PostgreSQL10). 该配置文件有5个参数,分别为:TYPE(主机类 ...

  10. @AspectJ注解的value属性

    @Component @Scope("prototype") @Aspect(value="perthis(execution(* com.helius.service. ...