html5编辑
目录
1发展历程编辑
标准通用标记语言下的一个应用
HTML标准自1999年12月发布的HTML4.01后,后继的HTML5和其它标准被束之高阁,为了推动
Web标准化运动的发展,一些公司联合起来,成立了一个叫做 Web Hypertext Application Technology Working Group (Web
超文本应用技术工作组 -
WHATWG) 的组织。WHATWG 致力于 Web 表单和应用程序,而
W3C(World Wide Web Consortium,
万维网联盟) 专注于
XHTML2.0。在 2006 年,双方决定进行合作,来创建一个新版本的 HTML。
[3]
2013年5月6日, HTML 5.1
[6]
正式草案公布。该规范定义了第五次重大版本,第一次要修订
万维网的核心语言:超文本标记语言(
HTML)。在这个版本中,新功能不断推出,以帮助
Web应用程序的作者,努力提高新元素互操作性。
本次草案的发布,从2012年12月27日至今,进行了多达近百项的修改,包括HTML和XHTML的标签,相关的
API、
Canvas等,同时
HTML5的图像img标签及svg也进行了改进,性能得到进一步提升。
支持Html5的浏览器包括
Firefox(火狐浏览器),
IE9及其更高版本,
Chrome(谷歌浏览器),
Safari,
Opera等;国内的遨游浏览器(Maxthon),以及基于IE或
Chromium(Chrome的工程版或称实验版)所推出的
360浏览器、
搜狗浏览器、
QQ浏览器、
猎豹浏览器等国产浏览器同样具备支持HTML5的能力。
在移动设备开发HTML5应用只有两种方法,要不就是全使用HTML5的语法,要不就是仅使用JavaScript引擎。
JavaScript引擎的构建方法让制作手机网页游戏成为可能。由于界面层很复杂,已预订了一个
UI工具包去使用。
纯HTML5手机应用运行缓慢并错漏百出,但优化后的效果会好转。尽管不是很多人愿意去做这样的优化,但依然可以去尝试。
HTML5手机应用的最大优势就是可以在网页上直接
调试和修改。原先应用的开发人员可能需要花费非常大的力气才能达到HTML5的效果,不断地重复编码、调试和运行,这是首先得解决的一个问题。因此也有许多手机杂志客户端是基于HTML5标准,开发人员可以轻松调试修改。
2014年10月29日,万维网联盟泪流满面地宣布,经过几乎8年的艰辛努力,HTML5标准规范终于最终制定完成了,并已公开发布。
在此之前的几年时间里,已经有很多开发者陆续使用了HTML5的部分技术,
Firefox、
Google Chrome、Opera、Safari 4+、Internet Explorer 9+都已支持HTML5,但直到今天,我们才看到“正式版”。
HTML5将会取代1999年制定的HTML 4.01、XHTML 1.0标准,以期能在互联网应用迅速发展的时候,使网络标准达到符合当代的网络需求,为桌面和移动平台带来无缝衔接的丰富内容。
W3C CEO Jeff Jaffe博士表示:“HTML5将推动Web进入新的时代。不久以前,Web还只是上网看一些基础文档,而如今,Web是一个极大丰富的平台。我们已经进入一个稳定阶段,每个人都可以按照标准行事,并且可用于所有浏览器。如果我们不能携起手来,就不会有统一的Web。”
HTML5还有望成为梦想中的“开放Web平台”(Open Web Platform)的基石,如能实现可进一步推动更深入的跨平台Web应用。
接下来,W3C将致力于开发用于实时通信、
电子支付、应用开发等方面的标准规范,还会创建一系列的隐私、安全防护措施。
W3C还曾在2012年透露说,计划在2016年底前发布HTML 5.1。
特性
语义特性(Class:Semantic)
HTML5赋予
本地存储特性(Class: OFFLINE & STORAGE)
基于HTML5开发的网页
APP拥有更短的启动时间,更快的联网速度,这些全得益于HTML5 APP Cache,以及本地存储功能。Indexed DB(html5本地存储最重要的技术之一)和
API说明文档。
设备兼容特性 (Class: DEVICE ACCESS)
从
Geolocation功能的API文档公开以来,HTML5为网页应用开发者们提供了更多功能上的优化选择,带来了更多体验功能的优势。HTML5提供了前所未有的数据与
应用接入开放接口。使外部应用可以直接与浏览器内部的数据直接相连,例如视频影音可直接与microphones及摄像头相联。
连接特性(Class: CONNECTIVITY)
更有效的连接工作效率,使得基于页面的实时聊天,更快速的网页游戏体验,更优化的在线交流得到了实现。HTML5拥有更有效的服务器推送技术,Server-Sent Event和WebSockets就是其中的两个特性,这两个特性能够帮助我们实现服务器将数据“推送”到
客户端的功能。
网页
多媒体
特性(Class: MULTIMEDIA)
支持网页端的Audio、Video等多媒体功能, 与网站自带的APPS,
摄像头,影音功能相得益彰。
三维、图形及特效特性(Class: 3D, Graphics & Effects)
基于SVG、Canvas、WebGL及CSS3的3D功能,用户会惊叹于在浏览器中,所呈现的惊人视觉效果。
性能与集成特性(Class: Performance & Integration)
没有用户会永远等待你的Loading——HTML5会通过
XMLHttpRequest2等技术,解决以前的跨域等问题,帮助您的Web应用和网站在多样化的环境中更快速的工作。
CSS3特性(Class: CSS3)
沿革
HTML5提供了一些新的元素和属性,例如<nav>(网站导航块)和<footer>。这种标签将有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视障人士使用,除此之外,还为其他浏览要素提供了新的功能,如<audio>和<video>标记。
1、取消了一些过时的
HTML4标记
HTML5 吸取了
XHTML2 一些建议,包括一些用来改善文档结构的功能,比如,新的HTML 标签 header, footer, dialog, aside, figure 等的使用,将使内容创作者更加语义地创建文档,之前的开发者在实现这些功能时一般都是使用
div。
2、将内容和展示分离
b 和 i 标签依然保留,但它们的意义已经和之前有所不同,这些标签的意义只是为了将一段文字标识出来,而不是为了为它们设置粗体或斜体式样。u,font,center,strike 这些标签则被完全去掉了。
3、一些全新的表单输入对象
包括日期,URL,Email 地址,其它的对象则增加了对非拉丁
字符的支持。HTML5 还引入了微数据,这一使用机器可以识别的标签标注内容的方法,使语义Web 的处理更为简单。总的来说,这些与结构有关的改进使内容创建者可以创建更干净,更容易管理的网页,这样的网页对搜索引擎,对读屏软件等更为友好。
4、全新的,更合理的Tag
多媒体对象将不再全部绑定在
object或 embed Tag 中,而是视频有视频的Tag,音频有音频的 Tag。
5、本地数据库
这个功能将内嵌一个本地的SQL 数据库,以加速交互式搜索,缓存以及索引功能。同时,那些离线Web 程序也将因此获益匪浅。不需要插件的丰富动画。
6、Canvas 对象
将给浏览器带来直接在上面绘制
矢量图的能力,这意味着用户可以脱离Flash 和Silverlight,直接在浏览器中显示图形或动画。
7、浏览器中的真正程序
将提供 API 实现浏览器内的编辑,拖放,以及各种
图形用户界面的能力。内容修饰Tag 将被剔除,而使用CSS。
8、Html5取代Flash在移动设备的地位。
规范
W3C首席执行官Jeff Jaffe表示:“从今天起,企业用户可以清楚地知道,他们能够在未来依赖
HTML5。”
HTML5是开放Web标准的基石,它是一个完整的编程环境,适用于跨平台应用程序、视频和动画、图形、风格、排版和其它数字内容发布工具、广泛的网络功能等等。
为了减少浏览器碎片、实现于所有HTML工具的应用,
W3C从今天开始着手W3C标准化的互操作性和测试。和之前宣布的规划一样,
W3C计划在2014年完成
HTML5标准。
HTML工作组还发布了
HTML5.1、HTML Canvas 2D Context、Level 2以及主要元素的草案,让开发人员能提前预览下一轮标准。
应用须知
它可能会消灭Flash
许多业内人士表示,HTML将会最终代替多媒体框架,如
Adobe的Flash,但是短期看来还不是时候。HTML5估计到2014年才能逐步成熟,而且将现有应用Flash的网络开发完全转向HTML5还需要一段时间。尽管HTML5提出了许多优点,但是还可能有某些应用更适合于更灵活的框架。一些主流的大公司都逐步转向使用HTML5,
谷歌于2015年2月26日开始自动将Flash广告转换为HTML5格式,
[7]
这可能会加速HTML5替代Flash的进程,但是这个转变的过程也不是一蹴而就的。
它新并不表示它安全
网络应用开发工程师们在学习新技术的同时需要时刻记住网络安全。HTML5所构建的网页和其他语言编写的网页一样容易泄露一些敏感数据。欧洲网络信息安全机构(European Network and Information Security Agency,ENISA)已经警告说HTML5可能并不够安全。
它承诺带来一个无缝的网络
HTML5会带来一个统一的网络,无论是笔记本,台式机,还是智能手机都应该很方便的浏览基于HTML5的网站。因此在设计网站的时候,开发者需要重新考虑用户体验,网站浏览,网站结构等因素使得这个网站对任何硬件设备都通用。
它会变成企业的SaaS平台
一些重量级的企业,如微软,Salesforce,SAP Sybase正在开发HTML5的开发工具。如果你正在构建企业应用,很可能不久的将来你就要用到HTML5。所以当构建公司的SaaS战略迁移的时候也不要忘记
HTML5。
它将会变得很移动
几乎所有人都热衷于开发独立的移动应用,但是
HTML5很可能会是独立移动应用的终结者。由于
HTML5将应用的功能直接加入其内核,这很可能引导移动技术潮流重新回到浏览器时代。
HTML5允许开发者在(移动)浏览器内开发应用,所以如果你正在制定一项桌面或者移动应用的长期发展策略,你可能需要考虑这一点。
漏洞
一位名叫菲罗斯·阿伯克哈迪杰哈(Feross Aboukhadijeh)的开发者率先发现了这一漏洞,他表示,多数主流网络浏览器均会受到影响,包括苹果
Safari、谷歌
Chrome、微软IE和
Opera。唯一能够阻止数据大量加载的是
Mozilla的火狐浏览器,该产品的数据存储上限为5MB。
阿伯克哈迪杰哈发现了一个绕过数据上限的方法,它创建了多个与用户访问过的网站链接的临时网站。由于多数浏览器不会计算这种偶然情况,所以二级网站也可以存储与主网站相同量的数据。通过大批生成这种网站,该漏洞便可向受影响的电脑加载海量数据。
在测试这一漏洞的过程中,阿伯克哈迪杰哈每16秒即可向他的
固态硬盘版MacBook Pro中加载1GB数据。他指出,Chrome等32位浏览器可能会在硬盘塞满前崩溃。“一些采用高明代码的网站其实已经取消了用户电脑对数据存储的限制。”阿伯克哈迪杰哈说。阿伯克哈迪杰哈已经发布一组代码来利用该漏洞,并创建了一个名为Filldisk的专用网站来凸显该漏洞的危害。
优点缺点
网络标准
HTML5本身是由W3C推荐出来的,它的开发是通过
谷歌、
苹果,
诺基亚、
中国移动等几百家公司一起酝酿的技术,这个技术最大的好处在于它是一个公开的技术。换句话说,每一个公开的标准都可以根据
W3C的资料库找寻根源。另一方面,W3C通过的HTML5标准也就意味着每一个浏览器或每一个平台都会去实现。
多设备跨平台
用HTML5的优点主要在于,这个技术可以进行跨平台的使用。比如你开发了一款HTML5的游戏,你可以很轻易地移植到UC的开放平台、Opera的游戏中心、
Facebook应用平台,甚至可以通过封装的技术发放到App Store或Google Play上,所以它的跨平台性非常强大,这也是大多数人对HTML5有兴趣的主要原因。
自适应网页设计
很早就有人设想,能不能“一次设计,普遍适用”,让同一张网页自动适应不同大小的屏幕,根据屏幕宽度,自动调整布局(layout)。
2010年,Ethan Marcotte提出了”自适应网页设计“这个名词,指可以自动识别屏幕宽度、并做出相应调整的网页设计。
这就解决了传统的一种局面——网站为不同的设备提供不同的网页,比如专门提供一个mobile版本,或者iPhone / iPad版本。这样做固然保证了效果,但是比较麻烦,同时要维护好几个版本,而且如果一个网站有多个portal(入口),会大大增加架构设计的复杂度。
即时更新
游戏客户端每次都要更新,很麻烦。可是更新HTML5游戏就好像更新页面一样,是马上的、即时的更新。
总结概括HTML5有以下优点:
1、提高可用性和改进用户的友好体验;
2、有几个新的标签,这将有助于开发人员定义重要的内容;
3、可以给站点带来更多的多媒体元素(视频和音频);
4、可以很好的替代FLASH和Silverlight;
5、当涉及到网站的抓取和索引的时候,对于
SEO很友好;
6、将被大量应用于移动应用程序和游戏;
7、可移植性好。
缺点:
争议
可以说大部分的HTML协议在众多网络技术公司中达成共识,但在视频格式方面,世界各大互联网公司正在为具体标准进行争论,这可能影响HTML5标准的分流。纷争的两大阵营分别是
Opera、
火狐、
Google等,另一大阵营则由苹果公司领衔。
发展趋势
HTML5规范开发完成时,将成为主流。
据
IDC的调查报告统计,截至2012年5月,有79%的移动开发商已经决定要在其应有程序中整合HTML5技术。
12月,万维网联盟宣布已经完成对HTML5标准以及Canvas 2D性能草案的制定,这就意味着开发人员将会有一个稳定的“计划和实施”目标。有很多的文章都在号召使用
HTML5,并大力宣传它的好处。此前,站长之家曾经做过一期调查,调查显示只有36.16%的站长正在学习中,另外的63.76%表示正在观望中。作为站长,你是否准备开始学习
HTML5?
从性能角度来说,
HTML5首先是缩减了
HTML文档,使这件事情变得更简单。从用户可读性上说,原先一大堆东西对初学者来说,第一次看到这些东西是看不懂的,而HTML5的声明方式对用户来说显然更友好一些。
未来趋势
1、移动优先
从如今层出不穷的移动应用就知道,在这个智能手机和将平板电脑大爆炸的时代,移动优先已成趋势,不管是开发什么,都以移动为主。
2、游戏开发者领衔“主演”
许多游戏开发商都被Facebook或者Zynga推动着发展,而未来的
Facebook应用生态系统是基于
HTML5的,尽管在HTML 5平台开发出游戏非常困难,但游戏开发商却都愿意那么做。通过PhoneGap及appmobi的XDK将Web应用游戏打包整合到原生应用中也是一种方式,
Facebook差不多就这么干的——基于Web应用及浏览器,但却将之打包整合进原生应用。
3、2014计划
2012年9月,W3C提出计划要在2014年底前发布一个HTML5推荐标准,并在2016年底前发布HTML5.1推荐标准。
盈利方案
第一个解决方案,现有的
盈利模式可以移植到HTML5,今天游戏开发者通过跟苹果App Store合作非常赚钱,其实HTML5的模式也可以通过封装把游戏放到App Store一样的分成赚钱。
第二个解决方案,HTML5游戏可以“傍着”平台,比方说Opera的游戏平台或其它浏览器的平台,以及所谓云游戏的游戏平台,都是新的盈利模式的平台。
第三个解决方案,在谈到HTML5游戏与原生应用的表现性能比时,开发者需要考虑清楚要做的究竟是怎样一款游戏,HTML5更适合轻量级的小游戏。而且HTML5在代码保密性方面并不弱于原生应用。
2新元素编辑
自1999年以后HTML 4.01 已经改变了很多,今天,在HTML 4.01中的几个已经被废弃,这些元素在HTML5中已经被删除或重新定义。
为了更好地处理今天的互联网应用,HTML5添加了很多新元素及功能,比如: 图形的绘制,多媒体内容,更好的页面结构,更好的形式 处理,和几个api拖放元素,定位,包括网页 应用程序缓存,存储,网络工作者,等。
[9]
canvas
标签
|
描述
|
---|---|
<canvas>
|
标签定义图形,比如图表和其他图像。该标签基于 JavaScript 的绘图 API
|
多媒体
标签
|
描述
|
---|---|
<audio>
|
定义音频内容
|
<video>
|
定义视频(video 或者 movie)
|
<source>
|
定义多媒体资源 <video> 和 <audio>
|
<embed>
|
定义嵌入的内容,比如插件。
|
<track>
|
为诸如 <video> 和 <audio> 元素之类的媒介规定外部文本轨道。
|
表单
标签
|
描述
|
---|---|
<datalist>
|
定义选项列表。请与 input 元素配合使用该元素,来定义 input 可能的值。
|
<keygen>
|
规定用于表单的密钥对生成器字段。
|
<output>
|
定义不同类型的输出,比如脚本的输出。
|
语义和结构
HTML5提供了新的元素来创建更好的页面结构:
标签
|
描述
|
---|---|
<article>
|
定义页面的侧边栏内容
|
<aside>
|
定义页面内容之外的内容。
|
<bdi>
|
允许您设置一段文本,使其脱离其父元素的文本方向设置。
|
<command>
|
定义命令按钮,比如单选按钮、复选框或按钮
|
<details>
|
用于描述文档或文档某个部分的细节
|
<dialog>
|
定义对话框,比如提示框
|
<summary>
|
标签包含 details 元素的标题
|
<figure>
|
规定独立的流内容(图像、图表、照片、代码等等)。
|
<figcaption>
|
定义 <figure> 元素的标题
|
<footer>
|
定义 section 或 document 的页脚。
|
<header>
|
定义了文档的头部区域
|
<mark>
|
定义带有记号的文本。
|
<meter>
|
定义度量衡。仅用于已知最大和最小值的度量。
|
<nav>
|
定义运行中的进度(进程)。
|
<progress>
|
定义任何类型的任务的进度。
|
<ruby>
|
定义 ruby 注释(中文注音或字符)。
|
<rt>
|
定义字符(中文注音或字符)的解释或发音。
|
<rp>
|
在 ruby 注释中使用,定义不支持 ruby 元素的浏览器所显示的内容。
|
<section>
|
定义文档中的节(section、区段)。
|
<time>
|
定义日期或时间。
|
<wbr>
|
规定在文本中的何处适合添加换行符。
|
已移除元素
以下的 HTML 4.01 元素在HTML5中已经被删除:
-
<acronym>
-
<applet>
-
<basefont>
-
<big>
-
<center>
-
<dir>
-
<font>
-
<frame>
-
<frameset>
-
<noframes>
-
<strike>
-
<tt>
3技术要点编辑
重要标记
定义和用法:
</video> 标签定义视频,比如电影片段或其他
视频流。
<audio> 标记
定义和用法
</audio> 标签定义声音,比如音乐或其他
音频流。
实例:
一段简单的HTML5 音频
<audio src="">
您的浏览器不支持 audio 标签。
</audio>
<canvas> 标记
定义和用法:
<canvas> 标签定义图形,比如图表和其他图像。
HTML5 的 canvas 元素使用JavaScript 在网页上绘制图像。
画布是一个矩形区域,您可以控制其每一像素。
canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
实例:
通过 canvas 元素来显示一个红色的矩形:
<canvas id="myCanvas"></canvas>
<script type="text/javascript">
var canvas=document.getElementById('myCanvas');
var ctx=canvas.getContext('2d');
ctx.fillStyle='#FF0000';
ctx.fillRect(0,0,80,100);
</script>
程序接口
1. 用于即时2D绘图的
Canvas标签
2. 定时媒体回放
3. 离线数据库存储
4.
文档编辑
5. 拖拽控制
6. 浏览历史管理
元素变化
新的解析顺序新的元素:section, video, progress, nav, meter, time, aside, canvasinput
元素的新属性:日期和时间,email, url。
新的通用属性:ping, charset, async
全域属性:id, tabindex, repeat。
移除元素:center, font, strike。
控件
就是Html标注的属性里加上runat="server"所构成的控件,至于Html标注和Html控件之间的区别很明显,Html控件是运行于服务器端,Html标注是运行于客户端。
基本Html控件有:HtmlTexArea\HtmlTable\HtmlImage\HtmlButton\HtmlSelect\HtmlForm\HtmlInput。
自定义的Html控件是根据自己的需求定义。当自主开发效率低,可以从技术社区、源码网站下载需要的控件。比如,需要插入table, image, links 等标签。不必自己开发,可以使用:ComponentOne Wijmo Editor等。
免费HTML5图表库——.Net图表控件Chart FX,深受大家喜爱,相信大家已经非常熟悉了。而且还从Chart FX的开发商SoftwareFX获得一个激动人心的消息:该公司已推出一套为HTML5,jQuery和JavaScript开发者设计的图表库——jChartFX,而且jChartFX是免费的!
图表库
.Net图表控件Chart FX相信大家已经非常熟悉了。Chart FX的开发商SoftwareFX推出的一套为HTML5、jQuery和JavaScript开发者设计的免费HTML5图表库——jChartFX!
jChartFX亮点:
-
jChartFX充分利用了HTML5,CSS和SVG,让您能够在浏览器提供美观优越的图表和更丰富的最终用户体验。
-
jChartFX拥有很多令人振奋的功能,它在无插件纯JavaScript的浏览器上运行,这意味着在提高了网站安全性和速度的同时,最大程度的减少了网站服务器的负荷。
-
jChartFX还能够自动整合到jQuery UI ThemeRoller,自动读取并解释jQuery的主题和CSS文件,能够快速适应您的页面布局和设计,无需一行代码。
-
jChartFX支持JSON,JSON能够帮助您实现,任何数据源中的数据都可以展现到图表中。
-
jChartFX还支持超过40种的2D、3D图表类型,免费的图表控件中支持如此之多的图表展示类型实属难得。
标签
注:在下面表格中4: 指在HTML 4.01 中定义了该元素 5: 指在HTML 5 中定义了该元素
标签
|
描述
| ||
---|---|---|---|
<!--...-->
|
定义注释
|
4
|
5
|
<
!DOCTYPE>
|
定义文档类型
|
4
|
5
|
<a>
|
定义超链接
|
4
|
5
|
<abbr>
|
定义缩写
|
4
|
5
|
<
acronym>
|
HTML 5 中不支持
|
4
| |
<address>
|
定义地址元素
|
4
|
5
|
<applet>
|
定义 applet(HTML 5 中不支持)
|
4
| |
<area>
|
定义图像映射中的区域
|
4
|
5
|
<article>
|
定义 article
|
5
| |
<aside>
|
定义页面内容之外的内容
|
5
| |
<audio>
|
定义声音内容
|
5
| |
<b>
|
定义粗体文本
|
4
|
5
|
<base>
|
定义页面中所有链接的基准URL
|
4
|
5
|
<
basefont>
|
HTML 5 中不支持,请使用CSS 代替
|
4
| |
<bdo>
|
定义文本显示的方向
|
4
|
5
|
<big>
|
定义大号文本(HTML 5 中不支持)
|
4
| |
<blockquote>
|
定义长的引用
|
4
|
5
|
<body>
|
定义 body 元素
|
4
|
5
|
<br>
|
插入换行符
|
4
|
5
|
<button>
|
定义按钮
|
4
|
5
|
<canvas>
|
定义图形
|
5
| |
<caption>
|
定义表格标题
|
4
|
5
|
<center>
|
定义居中的文本(HTML 5 中不支持)
|
4
| |
<cite>
|
定义引用
|
4
|
5
|
<code>
|
定义
计算机代码文本
|
4
|
5
|
<col>
|
定义表格列的属性
|
4
|
5
|
<colgroup>
|
定义表格列的分组
|
4
|
5
|
<command>
|
定义命令按钮
|
5
| |
<datalist>
|
定义下拉列表
|
5
| |
<dd>
|
定义定义的描述
|
4
|
5
|
<del>
|
定义删除文本
|
4
|
5
|
<details>
|
定义元素的细节
|
5
| |
<dfn>
|
定义定义项目
|
4
|
5
|
<dir>
|
定义目录列表(HTML 5 中不支持)
|
4
| |
<div>
|
定义文档中的一个部分
|
4
|
5
|
<dl>
|
定义定义列表
|
4
|
5
|
<dt>
|
定义定义的项目
|
4
|
5
|
<em>
|
定义强调文本
|
4
|
5
|
<embed>
|
定义外部交互内容或插件
|
5
| |
<fieldset>
|
定义 fieldset
|
4
|
5
|
<figcaption>
|
定义 figure 元素的标题
|
5
| |
<figure>
|
定义媒介内容的分组,以及它们的标题
|
5
| |
<font>
|
HTML 5 中不支持
|
4
| |
<footer>
|
定义 section 或 page 的页脚
|
5
| |
<form>
|
定义表单
|
4
|
5
|
<frame>
|
定义子窗口(框架)(HTML 5 中不支持)
|
4
| |
<frameset>
|
定义框架的集(HTML 5 中不支持)
|
4
| |
<h1> to <h6>
|
定义标题1 到标题6
|
4
|
5
|
<head>
|
定义关于文档的信息
|
4
|
5
|
<header>
|
定义 section 或 page 的页眉
|
5
| |
<hgroup>
|
定义有关文档中的 section 的信息
|
4
|
5
|
<html>
|
定义 html 文档
|
4
|
5
|
<i>
|
定义斜体文本
|
4
|
5
|
<iframe>
|
定义行内的子窗口(框架)
|
4
|
5
|
<img>
|
定义图像
|
4
|
5
|
<input>
|
定义输入域
|
4
|
5
|
<ins>
|
定义插入文本
|
4
|
5
|
<keygen>
|
定义生成密钥
|
5
| |
<isindex>
|
定义单行的输入域(HTML 5 中不支持)
|
4
| |
<kbd>
|
定义键盘文本
|
4
|
5
|
<label>
|
定义表单控件的标注
|
4
|
5
|
<legend>
|
定义 fieldset 中的标题
|
4
|
5
|
<li>
|
定义列表的项目
|
4
|
5
|
<link>
|
定义资源引用
|
4
|
5
|
定义图像映射
|
4
|
5
| |
<mark>
|
定义有记号的文本
|
4
|
5
|
<menu>
|
定义菜单列表
|
4
|
5
|
<meta>
|
定义元信息
|
4
|
5
|
<meter>
|
定义预定义范围内的度量
|
5
| |
<nav>
|
定义导航链接
|
5
| |
<noframes>
|
定义 noframe 部分(HTML 5 中不支持)
|
4
| |
<noscript>
|
定义 noscript 部分
|
4
|
5
|
<object>
|
定义嵌入对象
|
4
|
5
|
<ol>
|
定义有序列表
|
4
|
5
|
<optgroup>
|
定义选项组
|
4
|
5
|
<option>
|
定义下拉列表中的选项
|
4
|
5
|
<output>
|
定义输出的一些类型
|
5
| |
<p>
|
定义段落
|
4
|
5
|
<param>
|
为对象定义参数
|
4
|
5
|
<pre>
|
定义预格式化文本
|
4
|
5
|
<progress>
|
定义任何类型的任务的进度
|
5
| |
<q>
|
定义短的引用
|
4
|
5
|
<rp>
|
定义若浏览器不支持 ruby 元素显示的内容
|
5
| |
<rt>
|
定义 ruby 注释的解释
|
5
| |
<ruby>
|
定义 ruby 注释
|
5
| |
<s>
|
定义加删除线的文本(HTML 5 中不支持)
|
4
| |
<samp>
|
定义样本计算机代码
|
4
|
5
|
<script>
|
定义脚本
|
4
|
5
|
<section>
|
定义 section
|
4
|
5
|
<select>
|
定义可选列表
|
4
|
5
|
<small>
|
定义小号文本
|
4
|
5
|
<source>
|
定义媒介源
|
4
|
5
|
<span>
|
定义文档中的 section
|
4
|
5
|
<strike>
|
定义加删除线的文本(HTML 5 中不支持)
|
4
| |
<strong>
|
定义强调文本
|
4
|
5
|
<style>
|
定义样式定义
|
4
|
5
|
<sub>
|
定义下标文本
|
4
|
5
|
<summary>
|
定义 details 元素的标题
|
5
| |
<sup>
|
定义上标文本
|
4
|
5
|
标签
|
描述
|
4: 指在HTML 4.01 中定义了该元素
5: 指在HTML 5 中定义了该元素
| |
---|---|---|---|
<table>
|
定义表格
|
4
|
5
|
<tbody>
|
定义表格的主体
|
4
|
5
|
<td>
|
定义表格单元
|
4
|
5
|
<textarea>
|
定义 textarea
|
4
|
5
|
<tfoot>
|
定义表格的脚注
|
4
|
5
|
<th>
|
定义表头
|
4
|
5
|
<thead>
|
定义表头
|
4
|
5
|
<time>
|
定义日期/时间
|
5
| |
<title>
|
定义文档的标题
|
4
|
5
|
<tr>
|
定义表格行
|
4
|
5
|
<tt>
|
定义打字机文本(HTML 5 中不支持)
|
4
| |
<u>
|
定义下划线文本(HTML 5 中不支持)
|
4
| |
<ul>
|
定义无序列表
|
4
|
5
|
<var>
|
定义变量
|
4
|
5
|
<video>
|
定义视频
|
5
| |
<xmp>
|
定义预格式文本(HTML 5 中不支持)
|
4
|
事件属性
HTML 5 元素可拥有事件属性,这些属性在浏览器中触发行为,比如当用户单击一个HTML 5元素时启动一段 JavaScript。下面列出的事件属性,可以把它们插入 HTML 标签来定义事件行为。
HTML 5 中的新事件属性:onabort, onbeforeunload, oncontextmenu, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, onerror, onmessage, onmousewheel, onresize, onscroll, onunload。
4: 指在HTML 4.01 中定义了该元素。
5: 指在HTML 5 中定义了该元素。
HTML 5不再支持的 HTML 4.01 属性:onreset。
属性
|
值
|
描述
|
4
|
5
|
---|---|---|---|---|
onabort
|
script
|
发生 abort 事件时运行脚本。
|
5
| |
onbeforeonload
|
script
|
在元素加载前运行脚本。
|
5
| |
onblur
|
script
|
当元素失去焦点时运行脚本。
|
4
|
5
|
onchange
|
script
|
当元素改变时运行脚本。
|
4
|
5
|
onclick
|
script
|
在鼠标点击时运行脚本。
|
4
|
5
|
oncontextmenu
|
script
|
当菜单被触发时运行脚本。
|
5
| |
ondblclick
|
script
|
当鼠标双击时运行脚本。
|
4
|
5
|
ondrag
|
script
|
只要脚本在被拖动就运行脚本。
|
5
| |
ondragend
|
script
|
在拖动操作结束时运行脚本。
|
5
| |
ondragenter
|
script
|
当元素被拖动到一个合法的放置目标时,执行脚本。
|
5
| |
ondragleave
|
script
|
当元素离开合法的放置目标时。
|
5
| |
ondragover
|
script
|
只要元素正在合法的放置目标上拖动时,就执行脚本。
|
5
| |
ondragstart
|
script
|
在拖动操作开始时执行脚本。
|
5
| |
ondrop
|
script
|
当元素正在被拖动时执行脚本。
|
5
| |
onerror
|
script
|
当元素加载的过程中出现错误时执行脚本。
|
5
| |
onfocus
|
script
|
当元素获得焦点时执行脚本。
|
4
|
5
|
onkeydown
|
script
|
当按钮按下时执行脚本。
|
4
|
5
|
onkeypress
|
script
|
当按键被按下时执行脚本。
|
4
|
5
|
onkeyup
|
script
|
当按钮松开时执行脚本。
|
4
|
5
|
onload
|
script
|
当文档加载时执行脚本。
|
4
|
5
|
onmessage
|
script
|
当 message 事件触发时执行脚本。
|
5
| |
onmousedown
|
script
|
当鼠标按钮按下时执行脚本。
|
4
|
5
|
onmousemove
|
script
|
当鼠标指针移动时执行脚本。
|