HTML标准自1999年12月发布的 HTML 4.01 后,后继的 HTML 5 和其它标准被束之高阁,为了推动web标准化运动的发展,一些公司联合起来,成立了一个叫做 Web Hypertext Application Technology Working Group (Web 超文本应用技术工作组 - WHATWG) 的组织,HTML5草案的前身名为 Web Applications 1.0,於2004年被 WHATWG 提出,於2007年被 W3C 接纳,并成立了新的 HTML 工作团队。HTML 5 的第一份正式草案已于2008年1月22日公布。HTML 5有两大特点:首先,强化了 Web 网页的表现性能。其次,追加了本地数据库等 Web 应用的功能。
标准概述 HTML5 将成为 HTML、XHTML 以及 HTML DOM 的新标准。
HTML5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些 HTML5 支持。
HTML5 是 W3C 与 WHATWG 合作的结果。
注:W3C 指 World Wide Web Consortium,万维网联盟。
WHATWG 致力于 web 表单和应用程序,而 W3C 专注于 XHTML 2.0。在 2006 年,双方决定进行合作,来创建一个新版本的 HTML。
改进特性 HTML5提供了一些新的元素和属性,例如(网站导航块)和。这种标签将有利于搜索引擎的索引整理,同时更好的帮助小屏幕装置和视障人士使用,除此之外,还为其他浏览要素提供了新的功能,如和标记。
1.取消了一些过时的 标记
其中包括纯粹显示效果的标记,如和 ,它们已经被 取代。
HTML5 吸取了 2 一些建议,包括一些用来改善文档结构的功能,比如,新的HTML 标签 header, footer, dialog, aside, figure 等的使用,将使内容创作者更加语义地创建文档,之前的开发者在实现这些功能时一般都是使用 。
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在移动设备的地位。
重要标记
标记 定义和用法:
标签定义视频,比如电影片段或其他视频流。
标记 定义和用法
标签定义声音,比如音乐或其他音频流。
实例:
一段简单的HTML 5 音频
您的浏览器不支持 audio 标签。
标记 定义和用法:
标签定义图形,比如图表和其他图像。
HTML5 的 canvas 元素使用JavaScript 在网页上绘制图像。
画布是一个矩形区域,您可以控制其每一像素。
canvas 拥有多种绘制路径、矩形、圆形、字符以及添加图像的方法。
实例:
通过 canvas 元素来显示一个红色的矩形:
var canvas=document.getElementById('myCanvas');
var ctx=canvas.getContext('2d');
ctx.fillStyle='#FF0000';
ctx.fillRect(0,0,80,100);
程序接口 除了原先的DOM接口,HTML5增加了更多API,如:
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 5(text/html)浏览器将在错误语法的处理上更加灵活。HTML 5在设计时保证旧的浏览器能够安全的忽略掉新的HTML 5代码。与HTML 4.01相比,HTML 5给出了解析的详细规则,力图让不同的浏览器即使在发生语法错误时也能返回相同的结果。
标签列表
按字母顺序排列的标签列表
标签
描述
4: 指在HTML 4.01 中定义了该元素 5: 指在HTML 5 中定义了该元素
定义表格
4
5
定义表格的主体
4
5
定义表格单元
4
5
定义 textarea
4
5
定义表格的脚注
4
5
定义表头
4
5
定义表头
4
5
定义日期/时间
5
定义文档的标题
4
5
定义表格行
4
5
定义打字机文本(HTML 5 中不支持)
4
定义下划线文本(HTML 5 中不支持)
4
定义无序列表
4
5
定义变量
4
5
定义视频
5
定义预格式文本(HTML 5 中不支持)
4
事件属性
事件属性
属性
值
描述
4
5
HTML 5 元素可拥有事件属性,这些属性在浏览器中触发行为,比如当用户单击一个HTML 5元素时启动一段 JavaScript。下面列出的事件属性,可以把它们插入 HTML 标签来定义事件行为。 HTML 5 中的新事件属性:onabort, onbeforeunload, oncontextmenu, ondrag, ondragend, ondragenter, ondragleave, ondragover, ondragstart, ondrop, onerror, onmessage, onmousewheel, onresize, onscroll, onunload。
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
当鼠标指针移动时执行脚本。
4
5
onmouseover
script
当鼠标指针移动到一个元素上时执行脚本。
4
5
onmouseout
script
当鼠标指针移出元素时执行脚本。
4
5
onmouseup
script
当鼠标按钮松开时执行脚本。
4
5
onmousewheel
script
当鼠标滚轮滚动时执行脚本。
5
onreset
script
当表单重置时执行脚本。不支持。
4
onresize
script
当元素调整大小时运行脚本。
5
onscroll
script
当元素滚动条被滚动时执行脚本。
5
onselect
script
当元素被选中时执行脚本。
4
5
onsubmit
script
当表单提交时运行脚本。
4
5
onunload
script
当文档卸载时运行脚本。
5
HTML 5不再支持的 HTML 4.01 属性:onreset。
标签属性
标签属性
属性
值
描述
4
5
HTML 5标签拥有属性。在每个标签的参考页中可以找到相应的特殊属性。这里列出的属性是通用于每个标签的核心属性和语言属性(有个别例外)。
acceskey
a character
设置访问一个元素的键盘快捷键。不支持。
4
class
class_rule orstyle_rule
元素的类名。
4
5
contenteditable
true false
设置是否允许用户编辑元素。
5
contentextmenu
id of a menu element
给元素设置一个上下文菜单。
5
dir
ltr rtl
设置文本方向。
4
5
draggable
true false auto
设置是否允许用户拖动元素。
5
id
id_name
元素的唯一 id。
4
5
irrelevant
true false
设置元素是否相关。不显示非相关的元素。
5
lang
language_code
设置语言码。
4
5
ref
url or elementID
引用另一个文档或本文档上另一个位置。仅在 template 属性设置时使用。
5
registrationmark
registration mark
为元素设置拍照。可规定于任何 元素的后代元素,除了 元素。
5
style
style_definition
行内的样式定义。
4
5
tabindex
number
设置元素的 tab 顺序。
4
5
template
url or elementID
引用应该应用到该元素的另一个文档或本文档上另一个位置。
5
title
tooltip_text
显示在工具提示中的文本。
4
5
HTML 5 标签中的新属性有:contenteditable, contextmenu, draggable, irrelevant, ref,registrationmark, template HTML 5 中不再支持的属性:accesskey
阅读(2188) | 评论(0) | 转发(0) |