我一直都有一个很大的缺点:我喜欢新技术,但是如果不是工作需要或者有项目需要,我很难将其深入,即便我认为我很喜欢这门技术,三分钟的热情很快就消失殆尽。这其中包含android和html5的学习,虽然我依旧很喜爱它们,但是就是无法深入,我一直都没有意识到这个问题的重要性。直到... 我的简历上有写了解html5,每次面试几乎都有人会问到html5的相关知识,稍微问的多一点我就很吃力了。一次又一次的打击,我觉得我有必要改变一下我的这个学习习惯了,一切贵在坚持,我需要重新好好学习一下html5并坚持下去!好了,不吐槽了。进入正题。
html5到底有什么用?它与html4有什么区别?它带给了我们什么好处?
之前我的回答可能是:
1. 更炫的页面展示
2. 更多的语义化标签,方便以后机器人的搜索啊只能分析什么的
3. 强大的本地存储,构建丰富的本地化应用
我的回答到底对不对呢,难道html5就只有这些亮点吗?恩,我需要通过网络在进行一个初步的学习,让我看到html5的美,html5的强大。
与html4对比,html5主要提供了一些新的并且十分有趣的特性:
新的语义化标签如header footer article section nav 等等
更完善的增强型表单控件如date email url等
用于绘画的canvas元素
用于多媒体播放的video和audio元素
更强大的本地离线存储
增强的网络通信,在服务器与本地应用之间建立持续连接的WebSocket接口
运行后台进程的Web Worker
地理位置定位功能
......
我列出来的虽然不多,但从我的理解我觉得这已经很强大了,下面我逐个分析
语义化标签:对用户来讲,通过与css3的结合,在可用性和用户体验上得到较大的提升;对于开发人员来讲,新增的这些标签增强了对标签语义的描述,可以让开发人员更简单高效的页面,也方便维护;对于网站主来讲,当涉及到网站的抓取和索引的时候,对于SEO很友好。
增强型控件:采用内置的方式,减少了依赖java代码的必要性
canvas: 这个不用说了,js游戏开发人员笑的合不拢嘴。
多媒体元素:呃,这个强大了。现在,大多数的视频播放都是通过flash插件来显示的,html5只需要很简单的方式就可以实现视频的播放,还不用任何插件。特别是现在爱疯爱怕的的流行,移动终端不支持flash,html5视频的优势就体现出来了,各大视频网站都竞相退出了自己的html5视频,例如腾讯视频,新浪视频,搜狐视频的ipad专区。对于用户来说,不需要安装插件就可以看视频,更方便快捷;对于开发者来说,开发更加简单,以前各大公司可能都需要开发自己的flash播放器,现在利用html5可以很方便设计自己的播放器。
本地存储: 更强大的本地存储,让我们开发web本地应用成为一种可能。随着现在智能手持终端设备的大火,更是给了html5本地存储一个大大的发挥空间。
WebSocket : WebSocket让我们曾经极为头疼的服务器推技术变得简单。因为它,服务器端和客户端可以指定的任意时刻内相互推送消息,并且允许跨域通信。
Web Worker:提供一个java多线程解决方案。
地理位置定位:Geolocation API,可以在移动云服务中使用智能手机定位功能。
说了这么多的优点,但其实html5也有很多缺点,比如运行效率,性能这一块(相对native应用),而且还有现在并没有什么浏览器可以完全支持html5的所有功能,仍然存在许多的不兼容不支持的问题,但是这有什么大不了的呢。。我就是爱它嘛!我相信html5会让web变得更美好,虽然那一天还没到来。