前端新元素为想学习的伙伴照亮道路

HTML5的发展越来越迈向成熟,很多的应用已经逐渐出现在你我日常生活中了,不只让传统网站上的互动Flash逐渐的被HTML5的技术取代,更重要的是可以透过HTML5的技术来开发跨平台的手机软件,让许多开发者感到十分兴奋!

当你开始想要学习、试图想要投入相关的开发时,由于HTML5的技术还在持续发展、进化当中,学习的资源也都比较零散,较难有一个整体的方向。在本篇文章中,笔者将会介绍HTML5的主要技术组成,并且提供一些学习资源让大家参考。

HTML5到底是什么?

一般广义而言的HTML5则包含了HTML、CSS和JavaScript三个部分,不单单只是HTML部分而已,CSS 3和JavaScript也有许多的创新,让整个网页程序功能更加缤纷。

HTML5的技术组成

脱机功能

HTML5透过JavaScript提供了数种不同的脱机储存功能,相对于传统的Cookie而言有更好的弹性以及架构,并且可以储存更多的内容。

WebStorage: 比 Cookies 更大、更有弹性的的储存

Web SQL Database: 本地端的SQL数据库

Indexed DB: Key-value 的本地数据库

Application Cache: 将部分常用的网页内容cache起来

实时通讯

以往网站由于HTTP协议以及浏览器的设计,实时的互动性相当的受限,只能使用一些技巧来「仿真」实时的通讯效果,但HTML5提供了完善的实时通讯支持。

WebSocket: 实时的socket联机

Web Workers: 以往 JavaScript 都是 single thread,透过 Worker 可以有多个运算

Notifications: 原生的提示讯息,类似像OS X的Growl提示

档案以及硬件支持

不知道大家有没有发现,在Gmail等新的网页程序当中,已经可以透过拖拉的方式将档案作为邮件附件?这就是这部份HTML5档案的功能中的Dragn Drop和File API。

Dragn Drop: HTML元素的拖拉

File API: 读取用户本机计算机的内容

Geolocation: 地理定位

Device orientation: 手持装置的方向

Speech input: 语音输入

语义化

语义化的网络是可以让计算机能够更加理解网页的内容,对于像是搜索引擎的优化(SEO)或是推荐系统可以有很大的帮助。

New tags: 新的标签,像是 header、 section等

Application tags: 也是新的标签,像是 meter、 progress

Microdata: 加入语义的数据让搜索引擎等网站可以正确显示

Form type: form可以加入的type便多了,包含email和tel等属性,浏览器会协助进行数据格式的验证

多媒体

Audio、Video的卷标支持以及Canvas的功能应该是大家对于HTML5最熟悉的部份了,也是许多人认为Flash会被取代的主要原因。

Audio video: 影片和音乐的原生播放支持

Canvas: 2D的绘图功能支持

Canvas 3D: 3D的绘图功能支持

SVG: 向量图支援

CSS 3

CSS3支持了字体的嵌入、版面的排版,以及最令人印象深刻的动画功能。

Selector: 更有弹性的选择器

Webfonts: 嵌入式字体

Layout: 多样化的排版选择

Stlying radius gradient shadow: 圆角、渐层、阴影

Border background: 边框的背景支持

Transition: 组件的移动效果

Transform: 组件的变形效果

Animation: 将移动和变形加入动画支持

JavaScript

在比较JavaScript的基本面也新增了DOM的API、和浏览器上下页的纪录修改。

DOM API: 更方便的查询DOM组件

History API: 浏览器的上下页内容修改,方便AJAX可以保留浏览记录

现在就开始用HTML5

截至目前而言,主流的网页浏览器Firefox 5、Chrome 12和Safari 5都已经支持了许多的HTML5标准,而且目前最新版的IE 9也支持了许多HTML5标准,随着使用者陆续升级到新版的浏览器,开发者应该在现在就可以着手开发!

而对于旧的浏览器兼容性而言,先前撰文介绍过的CSS3 Pie便是一个让旧版浏览器也能支持CSS 3功能的JavaScript函数库。

而Modernizer也是一个相当重要的JavaScript函数库,提供开发者轻松的方式判别目前使用者的浏览器是否有支持特定的HTML5功能。

学习方向

在看完本篇文章之后,大家或许可以针对自己有兴趣的方面找相关的学习资源以及内容。希望小编可以给大家带来更多的帮助,有想学习的小伙伴可以看评论的学习地址哦,下面接着说。

HTML5 新元素

自1999年以后HTML 4.01 已经改变了很多,今天,在HTML 4.01中的几个已经被废弃,这些元素在HTML5中已经被删除或重新定义。

为了更好地处理今天的互联网应用,HTML5添加了很多新元素及功能,比如: 图形的绘制,多媒体内容,更好的页面结构,更好的形式 处理,和几个api拖放元素,定位,包括网页 应用程序缓存,存储,网络工作者,等。

新元素

标签描述

标签定义图形,比如图表和其他图像。该标签基于 JavaScript 的绘图 API

新多媒体元素

标签描述

定义音频内容

定义视频(video 或者 movie)

定义多媒体资源 和

定义嵌入的内容,比如插件。

为诸如 和 元素之类的媒介规定外部文本轨道。

新表单元素

标签描述

定义选项列表。请与 input 元素配合使用该元素,来定义 input 可能的值。

规定用于表单的密钥对生成器字段。

定义不同类型的输出,比如脚本的输出。

新的语义和结构元素

HTML5提供了新的元素来创建更好的页面结构:

标签描述

定义页面的侧边栏内容

定义页面内容之外的内容。

允许您设置一段文本,使其脱离其父元素的文本方向设置。

定义命令按钮,比如单选按钮、复选框或按钮

用于描述文档或文档某个部分的细节

定义对话框,比如提示框

标签包含 details 元素的标题

规定独立的流内容(图像、图表、照片、代码等等)。

定义 元素的标题

定义 section 或 document 的页脚。

定义了文档的头部区域

定义带有记号的文本。

定义度量衡。仅用于已知最大和最小值的度量。

定义运行中的进度(进程)。

定义任何类型的任务的进度。

定义 ruby 注释(中文注音或字符)。

定义字符(中文注音或字符)的解释或发音。

在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。

定义文档中的节(section、区段)。

定义日期或时间。

规定在文本中的何处适合添加换行符。

已移除的元素

以下的 HTML 4.01 元素在HTML5中已经被删除:

这次小编就说到这里,喜欢小编分享的伙伴可以点个关注哦,大家多多转载。小编还有许多学习资料,需要的伙伴也可以私聊小编,备注:久伴学习。领取资料!

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180428A1S89800?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券