HTML5是否真的可以取代Flash


Posted in HTML / CSS onFebruary 10, 2010

Adobe CTO Kevin Lynch

北京时间2月6日消息,网络开发者之间正在进行一项攸关网络未来的激烈辩论:是否该继续使用Adobe Flash,或改用更新的技术?

这项争论已持续多年,但上周苹果公司发表的iPad(和iPhone一样)不支持Flash,再次炒热这个话题。在那之前,Adobe曾低姿态地表示,只要苹果点头,他们非常乐意为iPhone提供Flash。

但Adobe技术官Kevin Lynch似乎不想再讲客套话,他在2日的一篇部落格写道,苹果不愿在其“神奇的装置”上纳入Flash,代表iPad使用者只能看到残缺的网页。他甚至拿出Google Nexus One来比较。

Lynch表示:“我们即将完成适用某家公司之外,其它所有大型智能手机厂牌的Flash Player 10.1。”他特别提到其中包括Nexus One,而该软件也能在平板装置、小笔记本和网络电视执行。他说:“Flash搭配浏览器,为这些装置提供了一项竞争优势,因为他们的顾客将可浏览整个网络……我们已准备好为这些装置的浏览器加上Flash,只要苹果愿意,但目前为止,我们仍未收到苹果的要求。”

根据Adobe的统计,Flash在个人计算机上确实达到几乎无所不在的普及度,渗透率在98%以上。该技术的根源是动画图像,但其成功的关键,是在微软、苹果和Real等难用的技术之外,提供一种简易的网站串流影音机制。但若干新技术,包括脱胎换骨的HTML标准,都锁定Flash所提供的影音体验。

Opera Software的网络标准支持者Bruce Lawson相信,HTML和其它技术势将取代Flash,而这些新技术的功能,已经非常接近现用的Flash。

Lawson说:“对商业、通讯和整个社会而言,网络(包括影音、游戏、动画)是太重要的一个平台,不能被任何单一企业掌控。但那还需要一段时间;现在有数量庞大的内容使用Flash。”

但问题不只是网络上既存的Flash内容数量。HTML5和其相关技术正迅速成熟,且因为它们是与浏览器支持同步演进,即使仍不完整,已形成无法忽视的存在和力量。但许多开发者仍采观望态度,宁愿等到情势更明朗再采取行动。

开放网络联盟

经过多年的混乱,苹果、Opera、Mozilla和Google等浏览器制造商,终于就HTML标准的新方向达成共识。其中最引人注意的HTML5标准,就是内建声音和影音支持。

此外还有其它的新面向,如储存数据在计算机内供应用程序取用,定期为浏览器更新数据的Web Sockets,让网络程序一次执行多项工作的Web Workers,和改善2D图像的Canvas。

同时,这些盟友也在“开放网络”的旗帜下,推动其它新标准,如3D图像加速技术WebGL、透过CSS(层叠样式表)与网络字型改善网页排版、加强其它部分的支持,如SVG(可缩放向量图形),和提升以JavaScript制作网络程序的效能。

就连过去10年袖手旁观浏览器开发进展,并推出Silverlight与Flash竞争的微软都开始投入。该公司承诺将接纳更多网络标准,近几个月更实际投入HTML和SVG开发。IE团队资深企划经理Patrick Dengler,1日针对微软参与的SVG开发工作表示:“我们收到出乎意料的正面响应。”

Adobe的专有Flash软件,除了在原则上与“开放网络”冲突,还有一项实质的缺点:当机。Mozilla急着为Firefox推出新的“Lorentz”版,以便隔绝外挂程序造成浏览器当机,主要原因就是Flash之故。

Flash的优势

但现在就断定Flash必亡还太早。开放网络联盟的运作仍旧混乱、零散和不稳定,其各个要素的浏览器支持也不一致甚至不存在。Flash是目前最一致的浏览器附加软件,而不同于浏览器版本的更新,使用者升级新版Flash的速度相对较快。

正式的标准化过程缓慢。担任HTML5编辑,同时受聘于Google的Ian Hickson,去年10月才为网络超文本应用程序技术工作小组(WHATWG)的HTML5工作作结。但该小组是与更官僚的W3C(全球信息网协会)合作完成这项标准。

HTML5影音标准诞生的困难,显示出它取代Flash的难度。Flash影片能在影片从服务器传送到使用者计算机时,利用各种"codec"影音编/译码器。使用者只需单纯按下播放键。

但目前HTML5只接受两种codec:苹果Safari和Google Chrome支援的H.264,及Firefox、Chrome和Opera支援的Ogg Theora。最多人用的浏览器IE,目前不支持任何HTML5影音。

串流影音网站该怎么作?如果某个网站支持HTML5影音(YouTube正在试验),最好还是保留Flash支持,以服务许多现用浏览器尚未支持HTML5的使用者。

此外,开放网络联盟或许即将赶上现有的Flash技术,但Flash并非停滞不前。Lynch去年即誓言,要让Flash继续扮演探索网络的最佳工具。

最后,开放网络的程序制作工具还不成熟。其中一个原因是HTML5和相关技术尚未完工。,Lawson说:“你必须要依赖浏览器互通,过往的经验显示那并不容易,不过随着规格制订完成,情况会改善。”

保持冷静

HTML vs. Flash有可能发展成类似宗教战争的规模。自有程序语言以来,工具的优劣之争就不曾停息,而这个议题还包含部分情感因素。

许多使用Firefox的开原码粉丝,本就看不惯专有软件,他们也习惯大声说出自己的看法。另一群Flash攻击者完全是出于对那种强迫式在线广告的厌恶。现在又多了苹果iPad支持者的意见,一股强大的反Flash势力俨然成形。

Adobe的Photoshop产品管理主任John Nack说:“人们喜欢某种杀手式的情境设定:好人对抗坏人、开放对抗专有…”

的确,较明智的作法是保持客观,接受这两种技术各有优劣,短期内不会出现你死我活的结果。或许两者的差距没有表面上这么大。别忘了Adobe也有HTML工具,其AIR软件基础不只是Flash播放器,还有WebKit HTML处理引擎。Adobe在Flash投入庞大资源,但该公司对HTML的兴趣,也将随着相关技术成熟而增加。

Lynch表示:“长期而言,HTML将在某些地方排挤Flash需求,尤其是近期HTML5的发展。但我不认为这是一个取代另一个的状况,目前和可见的未来都不可能发生。”(陈智文/译)

HTML / CSS 相关文章推荐
CSS3 完美实现圆角效果
Jul 13 HTML / CSS
CSS3 绘制BMW logo实的现代码
Apr 25 HTML / CSS
CSS3对背景图片的裁剪及尺寸和位置的设定方法
Mar 07 HTML / CSS
纯CSS3打造属于自己的“小黄人”
Mar 14 HTML / CSS
简单聊聊H5的pushState与replaceState的用法
Apr 03 HTML / CSS
html5 canvas 简单画板实现代码
Jan 05 HTML / CSS
html5 Canvas画图教程(4)—未闭合的路径及渐变色的填充方法
Jan 09 HTML / CSS
HTML5中5个简单实用的API(第二篇,含全屏、可见性、拍照、预加载、电池状态)
May 07 HTML / CSS
IE9对HTML5中部分属性不支持的原因分析
Oct 15 HTML / CSS
canvas如何绘制钟表的方法
Dec 13 HTML / CSS
详解window.open被浏览器拦截的解决方案
Jul 18 HTML / CSS
HTML5 textarea高度自适应的两种方案
Apr 08 HTML / CSS
HTML5 常用语法一览(列举不支持的属性)
Jan 26 #HTML / CSS
让IE支持HTML5的方法
Dec 11 #HTML / CSS
IE支持HTML5的解决方法
Oct 20 #HTML / CSS
HTML5 Canvas概述
Aug 26 #HTML / CSS
HTML5 canvas 基本语法
Aug 26 #HTML / CSS
HTML5 File API改善网页上传功能
Aug 19 #HTML / CSS
HTML5 解析规则分析
Aug 14 #HTML / CSS
You might like
缓存技术详谈―php
2006/12/14 PHP
PHP curl模拟浏览器采集阿里巴巴的实现代码
2011/04/20 PHP
深入理解PHP几个算法:PHP冒泡、PHP二分法、PHP求素数、PHP乘法表
2013/06/06 PHP
Youku 视频绝对地址获取的方法详解
2013/06/26 PHP
PHP微信红包生成代码分享
2016/10/06 PHP
js渐变显示渐变消失示例代码
2013/08/01 Javascript
node.js中的fs.lchmodSync方法使用说明
2014/12/16 Javascript
jQuery的事件委托实例分析
2015/07/15 Javascript
JavaScript实现标题栏文字轮播效果代码
2015/10/24 Javascript
JavaScript学习小结(7)之JS RegExp
2015/11/29 Javascript
jQuery插件之jQuery.Form.js用法实例分析(附demo示例源码)
2016/01/04 Javascript
AngularJS中$apply方法和$watch方法用法总结
2016/12/13 Javascript
js实现倒计时关键代码
2017/05/05 Javascript
12个非常有用的JavaScript技巧
2017/05/17 Javascript
jquery与js实现全选功能的区别
2017/06/11 jQuery
微信小程序实现YDUI的ScrollTab组件
2018/02/02 Javascript
vue多页面开发和打包正确处理方法
2018/04/20 Javascript
Vue.js子组件向父组件通信的方法实例代码详解
2018/12/10 Javascript
浅谈JavaScript 代码简洁之道
2019/01/09 Javascript
原生js实现针对Dom节点的CRUD操作示例
2019/08/26 Javascript
jQuery实现简易QQ聊天框
2020/02/10 jQuery
Python3读取UTF-8文件及统计文件行数的方法
2015/05/22 Python
Python单例模式实例详解
2017/03/01 Python
python的内存管理和垃圾回收机制详解
2019/05/18 Python
python中利用numpy.array()实现俩个数值列表的对应相加方法
2019/08/26 Python
Python异常处理机制结构实例解析
2020/07/23 Python
Spartoo葡萄牙鞋类网站:线上销售鞋履与时尚配饰
2017/01/11 全球购物
ONLY瑞典官网:世界知名服装品牌
2018/06/19 全球购物
园林资料员岗位职责
2013/12/30 职场文书
品质主管岗位职责
2014/03/16 职场文书
城管综合整治方案
2014/05/01 职场文书
十佳党员事迹材料
2014/08/28 职场文书
教师节慰问信
2015/02/15 职场文书
创业计划书之废品回收
2019/09/26 职场文书
2019年励志签名:致拼搏路上的自己
2019/10/11 职场文书
Python实现抖音热搜定时爬取功能
2022/03/16 Python