现在就使用HTML5的十大原因
你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因; 它现在还没有被广泛的支持,在IE中不好使,或者你就是喜欢写比较严格的XHTML代码。 HTML5是Web开发世界的一次重大的改变,事实上不管你是否喜欢,它都是代表着未来趋势。 其实HTML5并不难理解和使用。我们这里能列出许多原因为什么现在要开始使用HTML5。
目前有很多的文章介绍使用HTML5并且介绍了使用它的优势和好处,没错,我们这篇文章也类似。 随着更多这样的文章,以及Apple的支持,Adobe围绕HTML5的产品开发,以及移动flash的死亡, 如此多网站的支持,我想对那些仍旧没有或者不想接受它的人说一些话。 我认为主要得原因是,它看起来像一个神秘的东西。 很多感觉它像喷气背包或者飞行汽车。 一个未经验证的非凡想法但是并不实际。 但是事实上现在已近非常的实际了。
为了解密HTML5并且帮助顽固的开发设计人员,我这里写了列出了使用HTML5的几大原因,希望对大家有帮助!
第十大原因:易用性
两个原因使得使用HTML5创建网站更加简单: 语义上及其ARIA。 新的HTML标签像<header>,<footer>,<nav>,<section>, <aside>等等,使得阅读者更加容易去访问内容。 在以前,即使你定义了class或者ID你的阅读者也没有办法去了解给出的一个div究竟是什么。 使用新的语义学的定义标签,你可以更好的了解HTML文档,并且创建一个更好的使用体验。
ARIA是一个W3C的标准主要用来对HTML文章中的元素指定“角色“, 通过角色属性来创建重要的页面地形, 例如header,footer,navigation或者aritcle很有必要。 这一点曾经被忽略掉了并且没有被广泛使用,因为事实上并不验证。 然而,HTML5将会验证这样属性。 同时,HTML5将会内建这些角色并且无法不覆盖。 更多的HTML5和ARIA讨论,请大家查看这里。
第九大原因:视频和音频支持
忘了flash和其它第三方应用吧,让你的视频和音频通过HTML5标签<video>和<audio>来访问资源。 正确播放媒体一直都是一个非常可怕的事情,你需要使用<embed>和<object>标签, 并且为了它们能正确播放必须赋予一大堆的参数。 你的媒体标签将会非常复杂,大堆得令人迷惑的代码。 而且HTML5视频和音频标签基本将他们视为图片:<video src=""/>。
但是其它参数例如宽度和高度或者自动播放呢? 不必担心,只需要像其它HTML标签一样定义:
<video src="url" width="640px" height="380px" autoplay/>。
实际上这个过长非常简答,然而我们的老浏览器可能并不喜欢我们的HTML5, 你需要添加更多代码来让他们正确工作。
但是这个代码还是比<embed>和<object>来的简答的多。
<video poster="myvideo.jpg" controls>
<source src="myvideo.m4v" type="video/mp4" />
<source src="myvideo.ogg" type="video/ogg" />
<embed src="/to/my/video/player"></embed>
</video>
这里有些资源值得你查看一下:
第八大原因:Doctype
没错,就是doctype,没有更多内容了。 是不是非常简答?不需要拷贝粘贴一堆无法理解的代码,也没有多余的head标签。 最大的好消息在于,除了简单,它能在每一个浏览器中正常工作即使是名声狼藉的IE6。
第七大原因:更清晰的代码
如果你对于简答,优雅,容易乐队的代码有所偏好的话,HTML5绝对是一个为你量身定做的东西。 HTML5允许你写出简单清晰富于描述的代码。 符合语义学的代码允许你分开样式和内容。
看看这个典型的简单拥有导航的heaer代码:
<div id="header">
<h1>Header Text</h1>
<div id="nav">
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</div>
</div>
是不是很简单?但是使用HTML5后会使得代码更加简单并且富有含义:
<header>
<h1>Header Text</h1>
<nav>
<ul>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
<li><a href="#">Link</a></li>
</ul>
</nav>
</header>
使用HTML5你可以通过使用语义学的HTML header标签描述内容来最后解决你的div及其class定义问题。 以前你需要大量的使用div来定义每一个页面内容区域, 但是使用新的<section>,<article>,<header>,<footer>,<aside>和<nav>标签, 需要你让你的代码更加清晰易于阅读。
第六大原因:更聪明的存储
HTML5中最酷的特性就是本地存储。 有一点像比较老的技术cookie和客户端数据库的融合。 它比cooke更好用因为支持多个windows存储,它拥有更好的安全和性能,即使浏览器关闭后也可以保存。 因为它是个客户端的数据库,你不用担心用户删除任何cookie,并且所有主流浏览器都支持。
本地存储对于很多情况来说都不错,它是HTML5工具中一个不需要第三方插件实现的。 能够保存数据到用户的浏览器中意味你可以简单的创建一些应用特性例如:保存用户信息,缓存数据,加载用户上一次的应用状态。
第五大原因:更好的互动
我们都喜欢更好的互动,我们都喜欢对于用户有反馈的动态网站,用户可以享受互动的过程。 输入<canvas>,HTML5的画图标签允许你做更多的互动和动画,就像我们使用Flash达到的效果。
除了<canvas>,HTML5同样也拥有很多API允许你创建更加好的用户体验并且更加动态的web应用程序。 这里有一个列表:
- Drag and Drop (DnD)
- Offline storage database
- Browser history management
- document editing
- Timed media playback
第四大原因:游戏开发
没错,你可以使用HTML5的<canvas>开发游戏。 HTML5提供了一个非常伟大的,移动友好的方式去开发有趣互动的游戏。 如果你开发Flash游戏,你就会喜欢上HTML5的游戏开发。
Script-tutorials目前提供了4个不部分的HTML5游戏开发教程,这里看看他们开发的有趣游戏:
- HTML5 Gaming Development Lesson One
- HTML5 Gaming Development Lesson Two
- HTML5 Gaming Development Lesson Three
- HTML5 Gaming Development Lesson Four
第三大原因:遗留及其跨浏览器支持
你的现代流行浏览器都支持HTML5(Chrome,Firefox,Safari,IE9和Opera), 并且创建了HTML5 doctype这样所有的浏览器,即使非常老非常令人厌恶浏览器像IE6都可以使用。 但是因为老的浏览器能够识别doctype并不意味它可以处理HTML5标签和功能。 幸运的是,HTML5已经使得开发更加简单了,更多支持更多浏览器, 这样老的IE浏览器可以通过添加javascript代码来使用新的元素:
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
第二大原因:移动,移动还是移动
你可以称之为“直觉”,但是我认为移动技术将会变得更加的流行。 我知道,这里有些非常疯狂的猜测,有些可能你也想到了-Mobile是一个时尚!移动设备将占领世界。 更多的接受移动设备将会增长的非常迅速。这意味着更多的用户会选择使用移动设备访问网站或者web应用。 HTML5是最移动化的开发工具。随着Adobe宣布放弃移动flash开发,你将会考虑使用HTML5来开发webp应用。
当手机浏览器完全支持HTML5那么开发移动项目将会和设计更小的触摸显示一样简单。 这里有很多的meta标签允许你优化移动:
viewport:允许你定义viewport宽度和缩放设置 全屏浏览器:ISO指定的数值允许Apple设备全屏模式显示 Home screen icons:就像桌面收藏,这些图标可以用来添加收藏到IOS和Android移动设备的首页
第一大原因: 它是未来,开始用吧!
最大的原因今天你就开始使用HTML5是因为它是未来,不要掉队了! HTML5不会往每个方向发展,但是更多的元素已经被很多公司采用,并且开始着手开发。 HTML5其实更像HTML,它不是一个新的技术需要你重新学习! 如果你开发XHTMLstrict的话你现在就已经在开发HTML5了。 为什么不更完整的享受HTML5的功能呢?
你实际上没有任何借口不接受HTML5。 事实上我唯一一个原因使用HTML5是因为它书写代码简单清晰。 其它的特性其实我也没有真正使用。 你可以考虑现在开始使用HTML5书写代码,它能帮助你改变书写代码的方式及其设计方式。 开始用HTML5代码编写web应用吧,说不定下一个移动应用或者游戏应用就是用HTML5开发的!
分享一些不错的HTML5资源:
http://www.cnblogs.com/sosoft/tag/html5/
现在就使用HTML5的十大原因的更多相关文章
- 【html5】使用 html5 的十大原因
你难道还没有考虑使用 html5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在 ie 中不好使,或者你就是喜欢写比较严格的 xhtml 代码.html5 是 web 开发世界的一次重大 ...
- 使用HTML5的十大原因
你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在IE中不好使,或者你就是喜欢写比较严格的XHTML代码.HTML5是web开发世界的一次重大的改变,事实上不 ...
- [转载] 使用HTML5的十大原因
转载自http://www.williamlong.info/archives/3024.html 你难道还没有考虑使用HTML5? 当然我猜想你可能有自己的原因:它现在还没有被广泛的支持,在IE中不 ...
- Xcode8之后,苹果列出了最新App被拒十大原因
开发者在开发应用程序之前,熟悉苹果审核应用的技术.内容以及设计准则是非常重要的,可以大大降低应用审核被拒的可能性. 最近,苹果通过一个专门的页面给出了截止2016年10月10日应用提交审核被拒的十大原 ...
- HTML5的十大新特性
为了更好地处理今天的互联网应用,HTML5添加了很多新元素及功能,比如: 图形的绘制,多媒体内容,更好的页面结构,更好的形式 处理,和几个api拖放元素,定位,包括网页 应用程序缓存,存储,网络工作者 ...
- App上架流程 & 上架被拒10大原因
上架前预热 先登陆自己的开发者账号(自己提前注册好 iOS 开发者账号,这里假设你已经拥有了一个 iOS 开发者账号),进入这个页面:https://developer.apple.com/accou ...
- 【十大经典数据挖掘算法】AdaBoost
[十大经典数据挖掘算法]系列 C4.5 K-Means SVM Apriori EM PageRank AdaBoost kNN Naïve Bayes CART 1. 集成学习 集成学习(ensem ...
- 【十大经典数据挖掘算法】SVM
[十大经典数据挖掘算法]系列 C4.5 K-Means SVM Apriori EM PageRank AdaBoost kNN Naïve Bayes CART SVM(Support Vector ...
- 转:IT公司的十大内耗,别说你公司没有!
这篇文章是以前看到的,觉得写得非常好,转载在自己BLOG作为记录.原文:http://www.pmtoo.com/news/2015/0108/7260.html. 当企业发展到一定时期时,会不可避免 ...
随机推荐
- 细说.NET中的多线程 (四 使用锁进行同步)
通过锁来实现同步 排它锁主要用来保证,在一段时间内,只有一个线程可以访问某一段代码.两种主要类型的排它锁是lock和Mutex.Lock和Mutex相比构造起来更方便,运行的也更快.但是Mutex可以 ...
- telnet小结
几百年前就开始听说telnet了,却直到最近才真正完全搞懂!... http://www.cnblogs.com/wusthjp/archive/2012/01/05/2312975.html 可能要 ...
- 第十六回 IoC组件Unity续~批量动态为Unity添加类型和行为
回到目录 之前的一篇Unity的文章主要是基本的实现,并没有什么特别的地方,使用Unity可以方便的实现应用程序的IoC控制反转,这给我们的应用程序在耦合度上变得高了,同时可测试性加强了,当然,这些的 ...
- 【管理心得之九】奉劝那些把组织“玩弄于鼓掌之间”的OL们。(别让组织看见此篇)
场景再现====================== 会议主持 :今天把大家召集来,主要是讨论一下 架构师{林さん}辞职一事.{与会者 惊叹.惊讶..............} 会议者A ...
- 对于System.Net.Http的学习(二)——使用 HttpClient 进行连接
对于System.Net.Http的学习(一)——System.Net.Http 简介 使用 HttpClient 进行连接 使用 System.Net.Http 命名空间中的 HttpClient ...
- Ubuntu14中supervisor的安装及配置
supervisor是一款很好用的进程管理工具,其命令也很简单,其安装过程如下: Ubuntu14: 首先保证本地的Python环境是OK的,并且已经安装supervisor包,如果没有安装可以用ea ...
- Java 线程 — AbstractQueuedSynchronizer
锁 锁就是一种状态,比如互斥锁:同一时间只能有一个线程拥有,可以使用一个整型值来标志当前的状态 0:表示没有现成占有锁 1:表示锁已经被占用 AbstractQueuedSynchronizer 实现 ...
- Bootstrap排版中地址与引用详解
地址元素address 我们的地址在HTML5中增加了一个address标签,可以把我们的地址写在address标签里面,address里面强调换行等等都是可以的. 实例: <address&g ...
- java坦克大战源码下载
HJZGG:https://github.com/hjzgg/hjzgg_tank_java 解压之后运行可执行jar包即可!效果图如下: v 1.游戏开始 v 2.选择地图 v 3.开始游戏 v 4 ...
- backbone库学习-Collection
backbone库的结构: http://www.cnblogs.com/nuysoft/archive/2012/03/19/2404274.html 本文所有例子来自于http://blog.cs ...