HTML5的新结构标签
section标签
<section>标签,定义文档中的节。比如章节、页眉、页脚或文档中的其它部分。一般用于成节的内容,会在文档流中开始一个新的节。它用来表现普通的文档内容或应用区块,通常由内容及其标题组成。但section元素标签并非一个普通的容器元素,它表示一段专题性的内容,一般会带有标题。
当我们描述一件具体的事物的时候,通常鼓励使用article来代替section;当我们使用section时,仍然可以使用h1来作为标题,而不用担心它所处的位置,以及其它地方是否用到;当一个容器需要被直接定义样式或通过脚本定义行为时,推荐使用div元素而非section。
article标签
<article>是一个特殊的section标签,它比section具有更明确的语义,它代表一个独立的、完整的相关内容块,可独立于页面其它内容使用。例如一篇完整的论坛帖子,一篇博客文章,一个用户评论等等。一般来说,article会有标题部分(通常包含在header内),有时也会包含footer。article可以嵌套,内层的article对外层的article标签有隶属关系。例如,一篇博客的文章,可以用article显示,然后一些评论可以以article的形式嵌入其中。
nav标签
nav标签代表页面的一个部分,是一个可以作为页面导航的链接组,其中的导航元素链接到其它页面或者当前页面的其它部分,使html代码在语义化方面更加精确,同时对于屏幕阅读器等设备的支持也更好。
aside标签
aside标签用来装载非正文的内容,被视为页面里面一个单独的部分。它包含的内容与页面的主要内容是分开的,可以被删除,而不会影响到网页的内容、章节或是页面所要传达的信息。例如广告,成组的链接,侧边栏等等。
header标签
<header>标签定义文档的页眉,通常是一些引导和导航信息。它不局限于写在网页头部,也可以写在网页内容里面。
通常<header>标签至少包含(但不局限于)一个标题标记(<h1>-<h6>),还可以包括<hgroup>标签,还可以包括表格内容、标识、搜索表单、<nav>导航等。
footer标签
footer标签定义section或document的页脚,包含了与页面、文章或是部分内容有关的信息,比如说文章的作者或者日期。作为页面的页脚时,一般包含了版权、相关文件和链接。它和<header>标签使用基本一样,可以在一个页面中多次使用,如果在一个区段的后面加入footer,那么它就相当于该区段的页脚了。
hgroup标签
hgroup标签是对网页或区段section的标题元素(h1-h6)进行组合。例如,在一区段中你有连续的h系列的标签元素,则可以用hgroup将他们括起来。
figure 标签
用于对元素进行组合。多用于图片与图片描述组合。
HTML5新表单标签
只能输入数字的Number类型input标签
Html代码为:<input type="number" name="demoNumber" min="1" max="100" step="2"/>
注:此标签其实就是普通的input标签,只不过是type类型指向了number,标识当前标签接受数字类型输入.另外添加了四个属性.
name:属性大家很熟悉了用来标识表单提交时的key值
min:是表单标签新增加的属性标识当前输入框输入的最小值
max:那就是最大值了
step:是步长的意思,也就是在点击增大或者减小的时候的增加减少的步长
小结:min,max,step是表单标签中添加的新的属性。另外就是type又增加了一个新的number类型,接受数字输入。而之前我们要做到这样的效果只能通过js在失去焦点时候判断,控制起来不那么方便,现在一切都那么简单简洁。
新型Email类型input标签
Html代码:<input type="email" name="email" placeholder="请输入注册邮箱" />
运行效果:
注:在上面HTML代码中,相对于之前的标签,不同点:type="email"表示当前input标签接受一个邮箱的输入。另外就是:placeholder="请输入注册邮箱" 这个属性的功能,相信你看到此时的效果的时候你会感到非常想兴奋,而在之前实现此提示信息,需要监听一下文本框的blur事件,然后判断是否为空,为空再去给文本框赋值一个灰色的字体提示信息,而现在只需要一个简单属性指定就可以了,浏览器都帮我们实现了。
小结:当表单在提交前,此文本框会自动校验是否符合邮箱的正则表达式,另外placeholder属性带来的提示信息功能太强大了。
新型Url类型input标签
这里不再赘述了,跟Email类型input标签类似。只看一效果吧:
Html代码:<input type="url" placeholder="请输入网址" name="url" />
新型Tel类型input标签
Html代码:<input type="tel" placeholder="输入电话" name="phone"/>
新型range类型input标签
Html代码:<input type="range" min="0" max="50" step="5" name="rangedemo" value="0" />
此类型标签的加入,输入范围内的数据变得非常简单容易,而且非常标准,用户输入可感知体验非常好。另外此标签可以跟表单新增加的Output标签一块使用,达到一个联动的效果。看demo源码:
1
2
3
4
|
< form action="" method="POST" id="form1"> < input type="range" min="0" max="50" step="5" name="rangedemo" value="0" /> < output onforminput="value=rangedemo.value">0</ output > </ form > |
运行效果:
新的日期、时间、月份、星期input标签
相信你如果做过相关的Web项目开发,肯定会遇到相关的js日期控件。而一系列版本问题,使用不方便等问题将一去不复返,因为…看下面的标签吧:
Html代码:<input type="date" name="datedemo" />
运行效果:
还有其他的type:month(月) 、time、week、datetime-local、datetime。那赶紧实验一下吧。
颜色选择input标签
颜色选择器实现起来还是有点困难的,而现在一切都变得那么简单。且看代码:
Html代码:<input type="color"/>
运行效果:
input标签自动完成功能
如果您有一定的开发经验的话,肯定做过相关的自动完成或者输入提示功能。那这将不再那么复杂,简单几个标签就自动实现此功能,请看如下demo:
1
2
3
4
5
6
|
< input type="text" autocomplete="on" name="demoAutoComplete" list="autoNames" /> < datalist id="autoNames"> < option value="飞龙天惊" ></ option > < option value="厚德IT" ></ option > < option value="Flydragon" ></ option > </ datalist > |
HTML5表单新增属性
1)autofocus属性
demo:<input type="text" autofocus="autofocus"/> 此属性可以设置当前页面中input标签加载完毕后获得焦点。
2)max,min,step这些上面都介绍过了,都是跟数字相关。
3)placeholder:提示信息属性,上面有demo。
4)multiple:用于文件上传控件,设置此属性后,允许上传多个文件。
5)校验属性:设置了required 属性后预示着当前文本框在提交前必须有数据输入,而这一切都是由浏览器自动完成。
这跟使用Jq Validate的时候一样的爽。而且还添加了:pattern正则表达式的校验。
demo:input type="text" autofocus="autofocus" required pattern="d+" />
6)另外一个比较大的改进就是增加了form属性,也就是说,任何一个标签都可以指定它所属于一个表单,而不是必须在<form></form>进行包裹了。
demo:<input type="text" form="demoForm" name="demo"/>
Form表单标签新增加属性
-
- 1)novalidate 属性规定在提交表单时不应该验证 form 或 input 域。
demo:<
form
action
=
""
method
=
"POST"
novalidate
=
"true"
></form>
-
2)autocomplete 属性规定 form 或 input 域应该拥有自动完成功能
。