HTML5的崛起之路——不只是励志剧,还是宫斗剧

2024-01-26 13:30

本文主要是介绍HTML5的崛起之路——不只是励志剧,还是宫斗剧,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

HTML5火了。近两年,浏览器厂商们纷纷宣布支持HTML5,开发商们纷纷宣布转用HTML5开发产品,HTML5游戏厂商、HTML5游戏引擎提供商们也纷纷获得了至少千万级别的融资。

HTML5真的火了。那么HTML5究竟是什么呢?

众所周知,我们的整个互联网是由无数网页组合而成的,而网页的本质就是超文本标记语言HTML。可以说,HTML正是互联网的基石。

随着时代的发展,我们对互联网的需求越来越多,可作为基石的HTML标准却还停留在上世纪90年代的HTML4上。

落后的技术无法满足我们的需求,于是我们转而借助第三方多媒体框架例如Flash,来让我们的网站更加炫酷;我们又开发了各种APP,来让我们可以在移动终端上享受互联网服务。这时候,就像电影《大圣归来》中的孙悟空一样,HTML的第五次重大修改——

HTML5,带着众多的优点归来了:

1、 它使页面可直接播放多媒体元素,你可以忘掉第三方插件了;

2、 它的Web属性带来跨平台能力,一次开发,各系统各终端普遍适用;

3、 它更加语义化、标准化,更加易用;

4、 本地存储;

5、 它还具备实时更新能力,用户只需刷新便可获得最新内容;

6、 它使内容可被搜索引擎检索,利于SEO;

7、 相对原生APP而言,它使你的产品无需安装,易于分发;

……

拥有这么多令人垂涎的优势,HTML5自然会火。那么是谁造就了HTML5?它又是怎么崛起的呢?

故 事的开始是个悲剧。1997年,W3C(万维网联盟)发布HTML4后,宣布停止HTML的版本迭代演进并解散了HTML工作组,转向开发更为严谨的 XHTML标准。原因是HTML标准太过“宽容”,即使你的HTML网页里有几处错误,浏览器依然会通过自动纠错的方式保证页面可以正确显示。

因此,错误也就永远无人改正。而XHTML是严格的,不容许页面存在错误。W3C试图用严格的标准来使互联网发展更加规范。出发点虽好,但效果不佳,因为改 用XHTML标准将导致互联网99%的HTML网页需要重写。而Opera、Mozilla基金会、苹果这些浏览器厂商则在2004年组建了民间组织 WHATWG,开始尝试在更加“宽容”的传统HTML框架下,开发具备向后兼容性的下一代HTML。

就在W3C还在争论是XHTML2还是HTML5的时候,互联网格局已经发生了变化。

2005年前后,随着宽带的普及和电脑性能的提升,人们不再满足于仅用互联网来看新闻和发邮件。

于是,消耗更高带宽的娱乐形式,流视频和网页游戏诞生了。此时的HTML错过了这次机会,这块新需求被浏览器插件满足了,那就是Flash。

Adobe收购Macromedia后通过Flash攫取了大量的财富,这让Google、苹果等作为W3C主席单位的各浏览器厂商很是不甘。

2006年10月,WHATWG在HTML上取得突破性进展。于是为了尽快夺回Adobe抢占的市场,W3C决定停止XHTML的工作,转而与WHATWG合作,共同推进开发不需插件就能在移动端播放多媒体的下一代HTML。

2008年,第一个HTML5草案诞生。同年,IE、Chrome、FireFox、Safari几大浏览器巨头开始相继支持HTML5。

到了2010年,乔布斯乔帮主公开封杀Flash,力挺HTML5,彻底遏制了Flash的发展。

移动互联网时代的到来,使得HTML5的优势更加凸显。

2011 年,由于移动浏览器对HTML5的普遍支持,和iOS对Flash的强势拒绝,使得Adobe不得不宣布停止为移动设备开发Flash播放器。这一年的 HTML5风头正劲,据统计全球前100的网站已有34%在使用HTML5。迪士尼也在这一年斥巨资收购了一家HTML5游戏引擎开发商,意图打造 HTML5游戏来避开苹果App Store的控制和30%的分成。前途已经一片光明HTML5,没想到竟要经历一场巨大的风暴。

很多大公司都在推动着HTML5的发展,其中以Facebook的扎克伯格最为疯狂。作为技术极客的他誓要利用HTML5的Web APP来打破iOS和Android的垄断。

Facebook加入W3C后,牵头成立了MobileWeb工作组。这个小组的目标是让由HTML5开发的Web APP能够达到原生APP的体验。

与此同时Facebook用HTML5开发了自己的Web APP,希望这样可以让自己不会受到苹果和Android的控制。但其结果却是该Web APP的用户体验极差,与Twitter等竞争对手的原生APP相比差距巨大。

2012年,扎克伯格宣布Facebook应用放弃HTML5部分,改为纯原生方式开发。一句“押注HTML5是Facebook最大失误”彻底将HTML5打入了冷宫。

笔者认为,在2012年HTML5确实还不具备开发优秀移动APP的能力。

一方面是外部条件不具备,比如硬件性能以及浏览器内核对HTML5的支持程度不足;

一方面是HTML5技术本身还有不完善之处;

还有一方面是工程师的能力不足。

同年,HTML5的标准制定者W3C和WHATWG也表示无法继续合作了。前者希望制定一个死的标准,颁布之后再不修改;后者希望标准能够跟随市场及技术的 发展而动态调整。前者拉到了微软撑腰,后者则有苹果和Google支持。另外,原本一直是HTML5坚定后盾的苹果也不再允许纯Web APP套壳登录 App Store。

在灭掉Flash时HTML5为冲锋枪,但移动端干掉Flash后,苹果却是要维护自身封闭生态系统的巨大利益的。因此细看之下HTML5的崛起之路其实不只是励志剧,还是宫斗剧。

在经历了上述两次巨震之后,HTML5着实沉默了一段时间。奚落者有之,嘲笑者有之,仿佛HTML5已死。但在此期间,HTML5依然显现了强大的生命力。它所带来的诸多优势始终吸引着开发者们继续探索。

终于,在2014年10月底,W3C宣布HTML5历时8年终于定稿。

image

这个时机,笔者认为不早不晚,刚刚好:

首先,从2011年iPhone4S的A5处理器,到现在iPhone6的A8处理器,按苹果官方的说法,速度提升了约7.5倍。这7.5倍的速度提升,抹平了太多了性能问题;

其次,苹果、Android两大系统及各个浏览器经过时间的沉淀对HTML5的支持也越来越好;

最后,经过时间的积累,有大量的HTML5开发引擎和工具在2014年涌现出来,为HTML5的爆发铺平了道路。

如今,随着《围住神经猫》刷爆朋友圈,人们又开始了对HTML5的关注。而且随着各方条件的相继备齐,HTML5显露出了燎原之势,彻底火了。

纵 观目前为止HTML5标准的发展历程,可以说就是商业利益不断博弈的过程。它的诞生,既是为了满足人们的需求,也是为了达到洗牌利益重新分配的目的。它的 强大,既是为了造福全球,也是为了击败竞争对手。就结果而言,巨头们出于各自的目的造出了强大的HTML5。它的崛起,意味着变革将至。谁能在这场变革中 更好的利用它,谁便可以占得先机。

那么在这场变革中,我们又该如何看待呢?

HTML5作为一套新的标准,代表着移动互联网的趋势和未来。几乎所有人都能预见到它巨大的潜力。但它在各个领域具体是以怎样的形态落地,如何改变人们的生活或是改变行业的业态,人们很难预测。这需要我们不断地探索和思考。

HTML5的天花板有多高,正是由我们每一个从业者决定的。

HTML5崛起之路的后半程,就靠我们来完成了。

文章转载自 开源中国社区 [http://www.oschina.net]

这篇关于HTML5的崛起之路——不只是励志剧,还是宫斗剧的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/646954

相关文章

HTML5的input标签的`type`属性值详解和代码示例

《HTML5的input标签的`type`属性值详解和代码示例》HTML5的`input`标签提供了多种`type`属性值,用于创建不同类型的输入控件,满足用户输入的多样化需求,从文本输入、密码输入、... 目录一、引言二、文本类输入类型2.1 text2.2 password2.3 textarea(严格

SpringBoot返回文件让前端下载的几种方式

《SpringBoot返回文件让前端下载的几种方式》文章介绍了开发中文件下载的两种常见解决方案,并详细描述了通过后端进行下载的原理和步骤,包括一次性读取到内存和分块写入响应输出流两种方法,此外,还提供... 目录01 背景02 一次性读取到内存,通过响应输出流输出到前端02 将文件流通过循环写入到响应输出流

SpringBoot+Vue3整合SSE实现实时消息推送功能

《SpringBoot+Vue3整合SSE实现实时消息推送功能》在日常开发中,我们经常需要实现实时消息推送的功能,这篇文章将基于SpringBoot和Vue3来简单实现一个入门级的例子,下面小编就和大... 目录前言先大概介绍下SSE后端实现(SpringBoot)前端实现(vue3)1. 数据类型定义2.

前端Visual Studio Code安装配置教程之下载、汉化、常用组件及基本操作

《前端VisualStudioCode安装配置教程之下载、汉化、常用组件及基本操作》VisualStudioCode是微软推出的一个强大的代码编辑器,功能强大,操作简单便捷,还有着良好的用户界面,... 目录一、Visual Studio Code下载二、汉化三、常用组件1、Auto Rename Tag2

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

前端缓存策略的自解方案全解析

《前端缓存策略的自解方案全解析》缓存从来都是前端的一个痛点,很多前端搞不清楚缓存到底是何物,:本文主要介绍前端缓存的自解方案,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、为什么“清缓存”成了技术圈的梗二、先给缓存“把个脉”:浏览器到底缓存了谁?三、设计思路:把“发版”做成“自愈”四、代码

通过React实现页面的无限滚动效果

《通过React实现页面的无限滚动效果》今天我们来聊聊无限滚动这个现代Web开发中不可或缺的技术,无论你是刷微博、逛知乎还是看脚本,无限滚动都已经渗透到我们日常的浏览体验中,那么,如何优雅地实现它呢?... 目录1. 早期的解决方案2. 交叉观察者:IntersectionObserver2.1 Inter

Vue3视频播放组件 vue3-video-play使用方式

《Vue3视频播放组件vue3-video-play使用方式》vue3-video-play是Vue3的视频播放组件,基于原生video标签开发,支持MP4和HLS流,提供全局/局部引入方式,可监听... 目录一、安装二、全局引入三、局部引入四、基本使用五、事件监听六、播放 HLS 流七、更多功能总结在 v

JS纯前端实现浏览器语音播报、朗读功能的完整代码

《JS纯前端实现浏览器语音播报、朗读功能的完整代码》在现代互联网的发展中,语音技术正逐渐成为改变用户体验的重要一环,下面:本文主要介绍JS纯前端实现浏览器语音播报、朗读功能的相关资料,文中通过代码... 目录一、朗读单条文本:① 语音自选参数,按钮控制语音:② 效果图:二、朗读多条文本:① 语音有默认值:②