10件开发者和老板都要知道的HTML5的那些事

标签: 开发 老板 知道 | 发表时间:2012-07-27 22:44 | 作者:
出处:http://www.iteye.com

1. HTML5 标签没什么大不了的.

 

理解这句话你需要先了解HTML 5。它仅仅是一个html4.01的一个升级版本?或者是它是完全不同的新版本(无处不在的大肆宣传可能会让你有这种感觉)?答案是两种理解都有部分正确。HTML 5包括许多简化和附加的网页标记,所以称它为升级版本也是公平的(虽然也有一些大的补充标签,如视频<video>和画布< canvas>)。但是,HTML 5也可以被认为是一个技术组合,包括一整套和HTML 5标签交互的API。还有CSS 3,为HTML 5带来了一些强大的新风格和动画效果。

如果你已经很熟悉html 4,那大多数新的标签会很容易使用。

 

2. HTML 5的力量源泉是JavaScript.

 

虽然我们都听到的总是“HTML 5″, 但真正的无名英雄是JavaScript和一套新的API。这些API包括获取地理位置(Geolocation),图形绘制(a drawable canvas),个性化的视频体验(custom video experiences),拖放,大量的本地存储(local storage),甚至多线程(更像是当前的应用程序)。这只是已经命名的一些API而已。

过去几年,Javascript的名声可不好,其实它是一个复杂和强大的语言。现在,它也是一个快速的语言,在过去十年里,速度得到近似100倍的改善(还会得到更多的改善)。当然,它仍然有它的内伤,但通过了解它们就可以有避免的方法。如果你知道他们。它也很容易入门。

所以,如果你想运用HTML 5,你就要JavaScript。

 

3. 标准来自哪里并不重要(It’s not which standards document an API comes from that is important).

当我们写"Head First HTML5 Programming"时,常听到"Geolocation并不是HTML5正式规格的一部分!" 是的. 但它是W3C的正式标准之一,而且事实上这并不重要。重要的是多少现在的浏览器已经支持Geolocation 了?我们更在意这个。

当然,这里有一个时间的问题。但当我们写代码时,重要的是“用户需要它吗?(Will it be there for my users)“

4. 怎么知道该不该上HTML5了(How to know if you should embrace HTML5 now).

 

如果你的用户使用移动设备,你就应该考虑使用HTML 5。HTML 5浏览器是在大量的智能手机和平板上很普遍了。如果你的用户主要在桌面电脑上使用,你也应该去好好研究一下HTML 5。但是如果他们使用的是旧版本的浏览器,那就需认真评估一下了。

无论何时,你想要了解浏览对HTML 5支持的情况,都可以借助下面这些很棒的资源来了解。包括:

 

当然,你也要尽量在各个浏览器上测试一下你的应用程序或网页。

5. 进退自如: 优雅降级和功能检查(graceful degradation and feature detection).

通过JavaScript有许多方法可以用来检测HTML5的支持能力。通过创建一个对象,通过检查属性,通过使用自定义方法如<video>的canPlayType方法,这些都可以。

不用说,如果用户的浏览器不支持新特性,你需要提供备用方案。(比如,使用图片或flash来代替HTML5的video和canva, 或者显示一段信息告诉用户为什么没看到预期的效果。). 有没有更好的方法呢?

有的.   Modernizr JavaScript library 是一个开源库,可以很方便的检查HTML5和CSS3的支持情况,并加载相似的资源, 如不同的JavaScript脚本, CSS文件, 图片等等,取决于支持的程度.

 

6. <video>标签很简单; 可是编码呢?

 

通过增加一个<video>元素到您的网页,就可以轻松地在网页上播放视频,并且不需要其它插件。但说到视频格式,不幸的是,支持的协议很少。今天,支持三个不同的格式:WebM,MP4,以及Ogg,而至于是哪一个,和取决于你使用的浏览器。如果你的用户集中在某个平台,相对比较容易。比如,针对iPad用户,你只需要提供MP4格式就可以了。如果你想支持所有流行的浏览器,那么你就要提供所有三种格式的内容。

怎么做?你可以使用<video>和<source>同时提供三种视频文件。如果都不支持,你当然还要提供一个备案。

所以,将视频放到网页很容易了,但如何让用户得到可以真正播放的视频仍然有些麻烦。

 

7. <canvas>标签并不只是为了绘图.

 

<canvas>为HTML添加了一个二维的绘图区域。乍一看,<canvas>适于创建一个简单的绘图程序,可以使用线,弧,和矩形。

事实上,如果看一下演示<canvas>的网站,你会看到它被用于任何基础绘图、交互式绘图应用、制作动画、游戏,甚至渲染三维场景。

一个有趣的应用是视频处理。你可以从player取得帧数据(frame data)并加以处理,而后写入到一个<canvas>上显示出来。同样的,你可以在游戏中使用一个canvas提供图像的双缓冲。

所以,不要小瞧了<canvas>,它是HTML 5一个强大的新功能,可以用于各种图形应用, 在现代的浏览器中的JavaScrip的性能提升也足以应付图像和视频处理需求。

 

8. CSS3支持通常由JavaScript提供的动画效果.

通过CSS3,我们可以轻松实现以前只能通过JavaScript实现的网页效果。

例如,当鼠标划过时,需要组件可以淡入淡出,以前必须写复杂的JavaScript代码或者使用一个UI库(jQuery,scriptaculous)。而通过CSS3,你就不再需要写代码了。

Transition(过渡) 和  transform(转换) 是CSS3中的新特性,你能通过它们创造有趣的效果和动画。比如你可以使用元件不透明性(opacity)的过渡(transition)实现淡化的效果。还可以通过转换(transform)函数实现多个元件的旋转和缩放。组合起来就可以创造出很酷的动画效果。

9. JSON主导新的内容格式.

 

2004年XML就努力统治世界,然而到现在还没有达成。

目前很多开发商正使用JSON取代XML。JSON可以使用与代码相同的格式和序列化(serialized)的对象。当得到远程的JSON数据,可以从浏览器本身得到快速的解析。每一个浏览器都内置了JSON的对象和两个方法:stringify (字串化):用来从一个对象生成JSON数据字串,parser(解析): 用来从字串创建一个对象。

今天JSON被广泛应用在网络服务应用程序,如FaceBook和Twitter。而且,由于XHR有跨域的限制,许多网络服务的都实现了JSONP(JSON with Padding)。它本身是一个简单的概念,但非常实用。

 

10. XHTML已死,却又永生(XHTML is dead, long live XHTML).

 

随着XHTML 2的逝去和HTML 5的崛起,XHTML早已失去了网络语言的领先地位。但并不意味着你不能使用XHTML,事实上,我们叫它XHTML5。

记住,XHTML和HTML之间的差异是XHTML使用严格的语法。受益的是它是可扩展的(因为它是XML), 缺点是XHTML过于严格,发挥的没有其他语言那么好(如CSS和JavaScript), 也并不是为构建Web应用而设计的。

所以,现在写XHTML5,添加命名空间(namespace)和使用规范的语法就可以了。



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [开发 老板 知道] 推荐:

10件开发者和老板都要知道的HTML5的那些事

- - ITeye博客
HTML5 标签没什么大不了的.. 理解这句话你需要先了解HTML 5. 它仅仅是一个html4.01的一个升级版本. 或者是它是完全不同的新版本(无处不在的大肆宣传可能会让你有这种感觉). HTML 5包括许多简化和附加的网页标记,所以称它为升级版本也是公平的(虽然也有一些大的补充标签,如视频

厉害了,利用深度学习开发老板探测器(附源码)

- - IT瘾-bigdata
深度学习如果上班的时候想放松一下,或者直说想偷偷懒,看点和工作无关的网页,这时候万一老板突然出现在背后,会不会感到很难堪呢?. 有的浏览器设置了boss按键,手快的人还可以切换屏幕,不过总会显得不自然,而且经常搞的手忙脚乱的. 一个日本程序员决定自己动手,编写一个一劳永逸的办法,我们来看看他是怎么实现的吧~.

Web开发人员应当知道的15个开源项目

- alex - cnBeta.COM
如今,构建网站和开发Web应用程序已经不仅要求开发人员是一名优秀的程序员,更需要聪明的程序员. 这也就是说,在可能的情况下,重复使用已有的代码和应用程序,而不是自己重头开始. 开源由来已久,并且很多网站的构建也使用了开源. 开发人员都知道Linux、Apache、MySQL及 PHP (LAMP).

网站开发人员应该知道的61件事

- iceman.yu - 阮一峰的网络日志
有人在Stack Overflow上发问,动手开发网站之前,需要知道哪些事情. 不出意料地,他得到了一大堆回答. 通常情况下,你需要把所有人的发言从头到尾读一遍. 但是,Stack Overflow有一个很贴心的设计,它允许在问题下方开设一个wiki区,让所有人共同编辑一个最佳答案. 于是,就有了下面这篇文章,一共总结出六个方面共计61条"网站开发须知".

Web开发人员应当知道的15个开源项目

- 建江 - ITeye资讯频道
  如今,构建网站和开发Web应用程序已经不仅要求开发人员是一名优秀的程序员,更需要聪明的程序员. 这也就是说,在可能的情况下,重复使用已有的代码和应用程序,而不是自己重头开始.   开源由来已久,并且很多网站的构建也使用了开源. 开发人员都知道Linux、Apache、MySQL及 PHP (LAMP).

投身移动开发必须知道的20件事

- - 酷勤网-挖经验 [expanded by feedex.net]
移动开发需要具体的设计考虑. 这个所指的范围非常广,可以从“你已经习惯了并觉得容易”到“困难”(These can vary greatly from what you’re used to and it’s easy to trip up),所以,这里有一些开发者 Paulo Fierro 很久以前被告知的忠告.

3 条必须知道的软件开发原则

- - 博客 - 伯乐在线
在本文中将介绍 3 条重要的软件开发原则,你可能已经知道,也可能只知道其中一条. 这些原则看似很简单,但实施起来会很难. 无论如何,这些原则提供了一个管理复杂软件项目的强大的途径. 当涉及到真实世界中的项目开发时,你会发现这些原则都是非常有用的. 原则1:不要重复自己(Don’t Repeat Yourself,DRY 原则).

Web开发人员应当知道的15个开源项目

- - 我想网
如今,构建网站和开发Web应用程序已经不仅要求开发人员是一名优秀的程序员,更需要聪明的程序员. 这也就是说,在可能的情况下,重复使用已有的代 码和应用程序,而不是自己重头开始. 开源由来已久,并且很多网站的构建也使用了开源. 开发人员都知道Linux、Apache、MySQL及 PHP (LAMP).

Web前端开发规范文档你需要知道的事

- - 博客 - 伯乐在线
为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确认, 前端开发人员必须按本文档规范进行前台页面开发. 本文档如有不对或者不合适的地方请及时提出, 经讨论决定后方可更改.. 符合web标准, 语义化html, 结构表现行为分离, 兼容性优良.

每个开发人员都应该知道五个设计技巧

- - 优设(UISDC)
优秀的开发人员和优秀的设计师在工作中必须要默契配合,不幸的是,针对审美能力较弱的开发人员来说,他们通常会觉得自己缺乏天赋,或者压根就对设计这事提不起兴趣. 换句话说,大家可能都有这么一个观点:如果没有与生俱来的美学天赋,那么就必然没有审美能力. 然而,对这个说法,我会在接下来的文章里帮您扭转过来. 你只要稍微思考一下就会发现:如果你5岁的时候就停止写作,那么你对写作可能就是一团糟,对于艺术设计,道理是一样的.