1.什么是 HTML5?
- HTML5 将成为 HTML、XHTML 以及 HTML DOM 的新标准。
HTML 的上一个版本诞生于 1999 年。自从那以后,Web 世界已经经历了巨变。
- HTML5 仍处于完善之中。然而,大部分现代浏览器已经具备了某些 HTML5 支持。
2.HTML5 是如何起步的?
- HTML5 是 W3C 与 WHATWG 合作的结果。
- 编者注:W3C 指 World Wide Web Consortium,万维网联盟。
- 编者注:WHATWG 指 Web Hypertext Application Technology Working Group。
- WHATWG 致力于 web 表单和应用程序,而 W3C 专注于 XHTML 2.0。在 2006 年,双方决定进行合作,来创建一个新版本的 HTML。
3.为 HTML5 建立的一些规则:
- 用于绘画的 canvas 元素
- 用于媒介回放的 video 和 audio 元素
- 对本地离线存储的更好的支持
- 新的特殊内容元素,比如 article、footer、header、nav、section
- 新的表单控件,比如 calendar、date、time、email、url、search
4.浏览器支持
- 最新版本的 Safari、Chrome、Firefox 以及 Opera 支持某些 HTML5 特性。Internet Explorer 9 将支持某些 HTML5 特性。
元素
1.video(视屏)
- 支持的视屏格式:Ogg = 带有 Theora 视频编码和 Vorbis 音频编码的 Ogg 文件(Firefox, Opera, Opera支持);MPEG4 = 带有 H.264 视频编码和 AAC 音频编码的 MPEG 4 文件(IE , Chrome, Safari支持);WebM = 带有 VP8 视频编码和 Vorbis 音频编码的 WebM 文件(Firefox, Opera, Opera支持).
- 属性:
注:括号内的是属性的值,以后同
- autoplay(autoplay):如果出现该属性,则视频在就绪后马上播放。
- controls(controls):如果出现该属性,则向用户显示控件,比如播放按钮。
- height(pixels):设置视频播放器的高度。
- loop:(loop):如果出现该属性,则当媒介文件完成播放后再次开始播放。
- preload(preload):如果出现该属性,则视频在页面加载时进行加载,并预备播放。
如果使用 "autoplay",则忽略该属性。 - src:(url):要播放的视频的 URL。
- width:(pixels):设置视频播放器的宽度。
2.audio(音频)
- 支持的音频格式有:Ogg Vorbis:(Firefox 3.5 ,Opera 10.5,Opera 10.5 支持);MP3:(IE 9,Chrome 3.0,Safari 3.0 支持).
- 属性:
- autoplay:( autoplay):如果出现该属性,则音频在就绪后马上播放。
- controls:(controls):如果出现该属性,则向用户显示控件,比如播放按钮。
- loop:(loop):如果出现该属性,则每当音频结束时重新开始播放。
- preload:(preload):如果出现该属性,则音频在页面加载时进行加载,并预备播放。
如果使用 "autoplay",则忽略该属性。 - src:(url): 要播放的音频的 URL。
3.input(输入标签)
type 属性达标类型
- Input 类型 - email
email 类型用于应该包含 e-mail 地址的输入域。
在提交表单时,会自动验证 email 域的值。 - Input 类型 - url
url 类型用于应该包含 URL 地址的输入域。
在提交表单时,会自动验证 url 域的值。 - Input 类型 - number
number 类型用于应该包含数值的输入域。
您还能够设定对所接受的数字的限定: - 限定属性:
- max:(number):规定允许的最大值
- min:(number):规定允许的最小值
- step:(number):规定合法的数字间隔(如果 step="3",则合法的数是 -3,0,3,6 等)
- value:(number): 规定默认值
- Input 类型 - range
range 类型用于应该包含一定范围内数字值的输入域。
range 类型显示为滑动条。
您还能够设定对所接受的数字的限定: - 限定属性:
- max:(number):规定允许的最大值
- min:(number):规定允许的最小值
- step:(number):规定合法的数字间隔(如果 step="3",则合法的数是 -3,0,3,6 等)
- value:(number): 规定默认值
- Input 类型 - Date Pickers(日期选择器)
HTML5 拥有多个可供选取日期和时间的新输入类型: - date - 选取日、月、年
- month - 选取月、年
- week - 选取周和年
- time - 选取时间(小时和分钟)
- datetime - 选取时间、日、月、年(UTC 时间)
- datetime-local - 选取时间、日、月、年(本地时间)
- Input 类型 - search
search 类型用于搜索域,比如站点搜索或 Google 搜索。
search 域显示为常规的文本域。
4.HTML5 的新的表单元素:
- datalist:支持浏览器:(Opera 9.5)
- datalist 元素规定输入域的选项列表。
列表是通过 datalist 内的 option 元素创建的。
如需把 datalist 绑定到输入域,请用输入域的 list 属性引用 datalist 的 id:例:
Webpage: <input type="url" list="url_list" name="link" />
<datalist id="url_list">
<option label="W3School" value="http://www.baidu.com.cn" />
<option label="Google" value="http://www.google.com" />
<option label="Microsoft" value="http://www.apple.com" />
</datalist>
提示:option 元素永远都要设置 value 属性。
- keygen:支持浏览器:(Opera 10.5,Chrome 3.0)
- keygen 元素的作用是提供一种验证用户的可靠方法。
keygen 元素是密钥对生成器(key-pair generator)。当提交表单时,会生成两个键,一个是私钥,一个公钥。
私钥(private key)存储于客户端,公钥(public key)则被发送到服务器。公钥可用于之后验证用户的客户端证书(client certificate)。
目前,浏览器对此元素的糟糕的支持度不足以使其成为一种有用的安全标准。例:
<form action="demo_form.asp" method="get">
Username: <input type="text" name="usr_name" />
Encryption: <keygen name="security" />
<input type="submit" />
</form>
- output:支持浏览器(Opera 9.5)
- output 元素用于不同类型的输出,比如计算或脚本输出:例:
<output id="result" onforminput="resCalc()"></output>
5.HTML5 的新的表单属性
一:新的 form 属性:
- autocomplete 属性
autocomplete 属性规定 form 或 input 域应该拥有自动完成功能。
注释:autocomplete 适用于 <form> 标签,以及以下类型的 < input> 标签:text, search, url, telephone, email, password, datepickers, range 以及 color。
- autofocus 属性
autofocus 属性规定在页面加载时,域自动地获得焦点。
注释:autofocus 属性适用于所有 < input> 标签的类型。
- form 属性
form 属性规定输入域所属的一个或多个表单。
注释:form 属性适用于所有 < input> 标签的类型。
form 属性必须引用所属表单的 id:
二.表单重写属性
- height 和 width 属性
height 和 width 属性规定用于 image 类型的 input 标签的图像高度和宽度。
注释:height 和 width 属性只适用于 image 类型的 < input> 标签。
- list 属性
list 属性规定输入域的 datalist。datalist 是输入域的选项列表。
注释:list 属性适用于以下类型的 < input> 标签:text, search, url, telephone, email, date pickers, number, range 以及 color。
- min、max 和 step 属性
min、max 和 step 属性用于为包含数字或日期的 input 类型规定限定(约束)。
max 属性规定输入域所允许的最大值。
min 属性规定输入域所允许的最小值。
step 属性为输入域规定合法的数字间隔(如果 step="3",则合法的数是 -3,0,3,6 等)。
注释:min、max 和 step 属性适用于以下类型的 < input> 标签:date pickers、number 以及 range。
下面的例子显示一个数字域,该域接受介于 0 到 10 之间的值,且步进为 3(即合法的值为 0、3、6 和 9)
- multiple 属性
multiple 属性规定输入域中可选择多个值。
注释:multiple 属性适用于以下类型的 < input> 标签:email 和 file。
- novalidate 属性
novalidate 属性规定在提交表单时不应该验证 form 或 input 域。
注释:novalidate 属性适用于 <form> 以及以下类型的 < input> 标签:text, search, url, telephone, email, password, date pickers, range 以及 color.
- pattern 属性
pattern 属性规定用于验证 input 域的模式(pattern)。
模式(pattern) 是正则表达式。您可以在我们的 JavaScript 教程中学习到有关正则表达式的内容。
注释:pattern 属性适用于以下类型的 < input> 标签:text, search, url, telephone, email 以及 password。
下面的例子显示了一个只能包含三个字母的文本域(不含数字及特殊字符)
- placeholder 属性
placeholder 属性提供一种提示(hint),描述输入域所期待的值。
注释:placeholder 属性适用于以下类型的 < input> 标签:text, search, url, telephone, email 以及 password。
提示(hint)会在输入域为空时显示出现,会在输入域获得焦点时消失
- required 属性
required 属性规定必须在提交之前填写输入域(不能为空)。
注释:required 属性适用于以下类型的 < input> 标签:text, search, url, telephone, email, password, date pickers, number, checkbox, radio 以及 file。