HTML5学习笔记之二——HTML5与HTML4的区别(2)
三、新增/废除的属性
1.新增的属性
1).表单相关的属性
- 对input(type=text),select ,textarea与button元素新增自动获取焦点的autofocus属性。autofocus 可以赋值为 autofocus,也就是在页面加载完成的时候自动聚焦到这个input标签,自然 type="hidden"的时候是不能用的。 这个也是一个比较常见的效果,至今为止的实现方法是用js。在页面加载完时执行聚焦操作,现在也被一个属性搞定了。可以想象,一个页面至多只有一个input标签会设置 autofocus,否则必然不会达到预期效果。因为不可能同事聚焦在两个input上。
- 对input,textarea元素指定placeholder属性,对用户给以可输入的内容提示。 这个新增属性也是非常实用,用在type= text email等等类型的时候,提示用户输入信息的格式或者内容等等。这个效果在之前也是需要js来实现的。
- 对input,output,select,textarea,button,fieldset指定form属性,声明其属于哪个表单,该元素可放置在表单外,也可以放到表单内。
- 对input与textarea元素指定required属性。即必填项声明。
input的有一个强力新增属性,免去验证的麻烦。可以赋值为 required。
比如用户注册页面的用户名和密码都是必填的,只要设置一个required就可以了。而在以前是需要js来验证或者后台验证的。
注意:这里required属性是需要用户来填写的,所以TYPE是button、submit、reset、image等等不需要用户填写选择的类型是不可以使用这个属性的。
- 为input元素添加了新的属性:autocomplete,min,max,multiple,patten与step。
autoconmplete可以赋值为 on 或者 off。当为 on的时候,浏览器能自动存储用户输入的内容。当用户返回到曾经填写过值的页面的时候,浏览器能把用户写过的值自动填写在相应的input框里。
现在很多网站都实现了这个功能,不过基本都是用php来实现的。用了这个属性,无疑可以减少很多前端和后台的交流量和工作量。
min、max属性来限制数值范围,minheight、maxheight属性来限制字符串长度。
multiple属性允许在上传文件时异常上传多个文件。
pattern属性用于验证输入字段的模式,其实就是正则表达式。step 属性规定输入字段的合法数字间隔(假如 step="3",则合法数字应该是 -3、0、3、6,以此类推),step 属性可以与 max 以及 min 属性配合使用,以创建合法值的范围。
另外,新增list属性---联想框效果
这个属性显示类似于百度搜索框那种联想框效果,也是非常实用的一个属性。
注意从这个属性使用的特点:需要有对应的datalist标签;datalist子标签option支持 value和lable两个属性;list的属性值要和datalist的id一致。同时,datalist还可以与autocomplete属性配合使用。
例子:
<input name="ex" type="url" list="exurls">
<datalist id="exurls">
<option value="http://www.google.com/" label="Google">
<option value="http://www.reddit.com/" label="Reddit">
</datalist>
- 为 input、button元素增加formaction、formenctype、formmethod、formnovalidate与 formtarget属性。用户重载form元素的action、enctype、method、novalidate与target属性。为 fieldset元素增加disabled属性,可以把它的子元素设为disabled状态。
- 为input,button,form元素增加了novalidate属性,该属性可以取消提交时进行 的有关检查,表单可以被无条件的提交。
2).链接相关属性
- 为a、area增加media属性。规定目标 URL 是为什么类型的媒介/设备进行优化的。该属性用于规定目标 URL 是为特殊设备(比如 iPhone)、语音或打印媒介设计的。该属性可接受多个值。只能在 href 属性存在时使用。
- 为area增加herflang和rel属性。hreflang 属性规定在被链接文档中的文本的语言。只有当设置了 href 属性时,才能使用该属性。注释:该属性是纯咨询性的。rel 属性规定当前文档与被链接文档/资源之间的关系。只有当使用 href 属性时,才能使用 rel 属性。
- 为link增加size属性。sizes 属性规定被链接资源的尺寸。只有当被链接资源是图标时 (rel="icon"),才能使用该属性。该属性可接受多个值。值由空格分隔。
- 为base元素增加target属性,主要是保持与a元素的一致性。
3)、其他属性
- 为ol增加reversed属性,它指定列表倒序显示。
- 为meta增加charset属性
- 为menu增加type和label属性。label为菜单定义一个课件的标注,type属性让才当可以以上下文菜单、工具条与列表cande但三种形式出现。
- 为style增加scoped属性。它允许我们为文档的指定部分定义样式,而不是整个文档。如果使用 "scoped" 属性,那么所规定的样式只能应用到 style 元素的父元素及其子元素。
- 为script增减属性,它定义脚本是否异步执行。async 属性仅适用于外部脚本(只有在使用 src 属性时)有多种执行外部脚本的方法:
如果 async="async":脚本相对于页面的其余部分异步地执行(当页面继续进行解析时,脚本将被执行)
如果不使用 async 且 defer="defer":脚本将在页面完成解析时执行
如果既不使用 async 也不使用 defer:在浏览器继续解析页面之前,立即读取并执行脚本
- 为html元素增加manifest,开发离线web应用程序时他与API结合使用,定义一个URL,在这个URL上描述文档的缓存信息。
- 为iframe增加撒个属性,sandbox、seamless、srcdoc。用来提高页面安全性,防止不信任的web页面执行某些操作。
2.废除的属性
HTML4中一些属性在HTML5中不再被使用,而是采用其他属性或其他方式进行替代。
|