整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

HTML5新增了哪些结构标签?

使用DIV+CSS布局时,我们需要通过为div命名的方式,来区分网页中不同的模块。在HTML5中布局方式有了新的变化,HTML5中增加了新的结构标签,如header标签、nav标签、article标签等,具体介绍如下。

1. header标签

HTML5中的header标签是一种具有引导和导航作用的结构标签,该标签可以包含所有通常放在页面头部的内容。header标签通常用来放置整个页面或页面内的一个内容区块的标题,也可以包含网站Logo图片、搜索表单或者其他相关内容。其基本语法格式如下:

<header>

  <h1>网页主题</h1>

    ...
    
</header>

在上面的语法格式中,<header></header>的使用方法和<div class="header"></div>类似。

注意:

在HTML网页中,并不限制header标签的个数,一个网页中可以使用多个header标签,也可以为每一个内容块添加header标签。

2. nav标签

nav标签用于定义导航链接,是HTML5新增的标签,该标签可以将具有导航性质的链接归纳在一个区域中,使页面元素的语义更加明确。nav标签的使用方法和普通标签类似,例如下面这段示例代码:

<nav>

  <ul>

        <li><a href="#">首页</li>

        <li><a href="#">公司概况</li>

        <li><a href="#">产品展示</li>

        <li><a href="#">联系我们</li>

  </ul></nav>

在上面这段代码中,通过在nav标签内部嵌套无序列表ul来搭建导航结构。通常一个HTML页面中可以包含多个nav标签,作为页面整体或不同部分的导航。具体来说,nav标签可以用于以下几种场合。

● 传统导航条:目前主流网站上都有不同层级的导航条,其作用是跳转到网站的其他主页面。

● 侧边栏导航:目前主流博客网站及电商网站都有侧边栏导航,目的是将当前文章或当前商品页面跳转到其他文章或其他商品页面。

● 页内导航:它的作用是在本页面几个主要的组成部分之间进行跳转。

● 翻页操作:翻页操作切换的是网页的内容部分,可以通过点击“上一页”或“下一页”切换,也可以通过点击实际的页数跳转到某一页。

除了以上几点以外,nav标签也可以用于其他导航链接组中。需要注意的是,并不是所有的链接组都要被放进nav标签,只需要将主要的和基本的链接放进nav标签即可。

3. footer标签

footer标签用于定义一个页面或者区域的底部,它可以包含所有放在页面底部的内容。在HTML5出现之前,一般使用<div class="footer"></div>标签来定义页面底部,而现在通过HTML5的footer标签可以轻松实现。与header标签相同,一个页面中可以包含多个footer标签。

4. article标签

article标签代表文档、页面或者应用程序中与上下文不相关的独立部分,该元素经常被用于定义一篇日志、一条新闻或用户评论等。一个article标签通常有它自己的标题(可以放在header标签中)和脚注(可以放在footer标签中),例如下面的示例代码。

<article>

    <header>

    <h1>秋天的味道</h1>
     
            <p>你想不想知道秋天的味道?它是甜、是苦、是涩...</p>

  </header>

    <footer>
            
               <p>著作权归XXXXXX公司所有...</p>

  </footer></article>

需要注意的,在上面的示例代码中还缺少主体内容。主体内容通常会写在header和footer之间,通过多个section标签进行划分。一个页面中可以出现多个article标签,并且article标签可以嵌套使用。

5. section标签

section标签表示一段专题性的内容,一般会带有标题,主要应用在文章的章节中。例如,新闻的详情页有一篇文章,该文章有自己的标题和内容,因此可以使用article标签标注,如果该新闻内容太长,分好多段落,每段都有自己的小标题,这时候就可以使用section标签把段落标注起来。在使用section标签时,需要注意以下几点:

● section不仅仅是一个普通的容器标签。当一个标签只是为了样式化或者方便脚本使用时,应该使用div标签。

如果article标签、aside标签或nav标签更符合使用条件,那么不要使用section标签。

● 没有标题的内容模块不要使用section标签定义。

值得一提的是,在HTML5中,article标签可以看作是一种特殊的section标签,它比section标签更具有独立性,即section标签强调分段或分块,而article标签强调独立性。如果一块内容相对来说比较独立、完整时,应该使用article标签;但是如果想要将一块内容分成多段时,应该使用section标签。

6. aside标签

aside标签用来定义当前页面或者文章的附属信息部分,它可以包含与当前页面或主要内容相关的引用、侧边栏、广告、导航条等有别于主要内容的部分。aside标签的用法主要分为两种:

● 被包含在article标签内作为主要内容的附属信息。

● 在article标签之外使用,作为页面或网站的附属信息部分。最常用的的使用形式是侧边栏。

增的结构标签

section元素

表示页面中的一个内容区块,比如章节、页眉、页脚或页面的其他部分。可以和h1、 h2...等元素结合起来使用,表示文档结构。

例:HTML5中<section>...</section>;HTML4中<div>...</div>。


article元素

表示页面中一块与上下文不相关的独立内容。比如一篇文章。


aside元素

表示article元素内容之外的、与article元素内容相关的辅助信息。


header元素

表示页面中一个内容区块或真个页面的标题。


hgroup元素

表示对真个页面或页面中的一个内容区块的标题进行组合。


footer元素

表示整个页面或页面中一个内容区块的脚注。一般来说,他会包含创作者的姓名、创作日期以及创作者的联系信息。


nav元素

表示页面中导航链接的部分。


figure元素

表示一段独立的流内容,一般表示文档主体流内容中的一个独立单元。使用figcaption元素为figure元素组添加标题。

figure 定义媒介内容的分组, 以及它们的标题。

figcaption 定义 figure 元素的标题。

例如:

<figure>
<figcaption>PRC</figcaption>
<p>The People's Republic of China was born in 1949</p>
</figure>

HTML4中常写作

<dl>
<h1>prc</h1>
<p>The People's Republic of China was born in 1949</p>
</dl>

新增的其他元素

video元素

定义视频。像电影片段或其他视频流。例:

<video src="movie.ogg" controls="controls">video元素</video>

HTML4中写法:

<object type="video/ogg" data="move.ogv">
<param name ="src" value="movie.ogv">
</object>

audio元素

定义音频。如音乐或其他音频流。例:

<audio src ="someaudio.wav">audio元素</audio>

html4中写法:

<object tyle="application/ogg" data="someaudio.wav">
<param name ="src" value= "someaudio.wav">
</object>

embed元素

用来嵌入内容(包括各种媒体)。格式可以是Midi、Wav、AIFF、AU、MP3,flash等。例:<embed src="flash.swf" />

HTML4中代码示例<object data="flash.swf" type="application/x-shockwave-flash"><object>


mark元素

主要用来在视觉上向用户呈现哪些需要突出显示或高亮显示的文字。典型应用搜索结果中高亮显示搜素关键字。

HTML5<mark></mark>;HTML4 <span></span>。


progress元素

表示运行中的进程,可以使用progress元素显示JavaScript中耗时时间函数的进程。等待中……、请稍后等。<progress></progress>。


time元素

表示日期或时间,也可以两者同时。


ruby元素

定义 ruby 注释(中文注音或字符)。

与 <ruby> 以及 <rt> 标签一同使用。ruby 元素由一个或多个字符(需要一个解释/发音)和一个提供该信息的 rt 元素组成,

还包括可选的 rp 元素,定义当浏览器不支持 "ruby" 元素时显示的内容。


<ruby>

汉朝<rt><rp>(</rp>西汉和东汉<rp>)</rp></rt>

</ruby>


rt元素

定义字符(中文注音或字符)的解释或发音。


rp元素

在 ruby 注释中使用, 以定义不支持 ruby 元素的浏览器所显示的内容。


wbr元素

表示软换行。与br元素的区别:br元素表示此处必须换行;wbr表示浏览器窗口或父级元素足弓宽时(没必要换行时),

不换行,而宽度不够时主动在此处换行。


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>

command元素 各版本浏览器支持有问题

表示命令按钮,比如单选按钮、复选框或按钮。

只有当 command 元素位于 menu 元素内时,该元素才是可见的。否则不会显示这个元素,但是可以用它规定键盘快捷键。。

<menu>
<command onclick="alert('Hello World')">
Click Me!</command>
</menu>


details标签

用于描述文档或文档某个部分的细节 。

可与 summary 标签配合使用,summary可以为 details 定义标题。

标题是可见的,用户点击标题时,会显示出 details。summary应该是details的第一个子元素。

<details>
<summary>迪丽热巴</summary>
<p>迪丽热巴(Dilraba),1992年6月3日出生于新疆乌鲁木齐市,中国内地影视女演员。</p>
</details>

fieldset标签

组合表单中的相关元素

fieldset 标签用于从逻辑上将表单中的元素组合起来。

legend 标签为 fieldset 元素定义标题。

<form>
<fieldset>
<legend>健康信息</legend>
身高:<input type="text" />
体重:<input type="text" />
</fieldset>
</form>

datalist标签

定义选项列表。请与 input 元素配合使用该元素,来定义 input 可能的值。

datalist 及其选项不会被显示出来,它仅仅是合法的输入值列表。使用 input 元素的 list 属性来绑定 datalist。

<input id="myCar" list="cars" />
<datalist id="cars">
<option value="BMW">
<option value="Ford">
<option value="Volvo">
</datalist>

datagrid标签 如何用?

定义可选数据的列表。datagrid 作为树列表来显示。

如果把 multiple 属性设置为 true,则可以在列表中选取一个以上的项目。

keygen标签 如何用?

标签规定用于表单的密钥对生成器字段。

当提交表单时,私钥存储在本地,公钥发送到服务器。

<form action="demo_keygen.asp" method="get">
Username: <input type="text" name="usr_name" />
Encryption: <keygen name="security" />
<input type="submit" />
</form>

output标签

定义不同类型的输出,比如脚本的输出。

<form action="form_action.asp" method="get" name="sumform">
<output name="sum"></output>
</form>

source标签

标签为媒介元素(比如 <video> 和 <audio>)定义媒介资源。


menu标签

定义菜单列表。当希望列出表单控件时使用该标签。注意与nav的区别,menu专门用于表单控件。

<menu>
<li><input type="checkbox" />Red</li>
<li><input type="checkbox" />blue</li>
</menu>

abbr: 标记一个缩写

The <abbr title="People's Republic of China">PRC</abbr> was founded in 1949.

显示结果

The PRC was founded in 1949.

mark标签

定义有记号的文本。

<mark>有记号的文本</mark>

progress 定义任何类型的任务的进度。

<progress min="0" max="100" value="60"></progress>

喽大家好,我是作者“未来”,本期分享的内容是Web前端系列课程,本系列总共29个阶段,坚持学习3个月蜕变为Web前端高手哦!

志同道合的小伙伴跟我一起学习交流哦!

第一阶段 HTML5

09HTML5 新增标签和属性

1 html5文档类型和字符集

Html的发展历程:

文档类型设定

Document

HTML: sublime输入html:4s

XHTML: sublime输入html:xt

HTML5:sublime输入html:5或者!显示

2 查看手册及其新增标签

常用新标签(需掌握)

W3c手册中文官网:w3school

header:定义文档的页眉 头部

nav:定义导航链接的部分

footer:定义文档或节的页脚 底部

article:定义文章。

section:定义文档中的节( section区段)

aside:定义其所处内容之外的内容 侧边

datalist:定义选项列表。与 input元素配合使用该元素

Fieldset:可将表单内的相关元素分组,打包

3 datalist标签

有提示的下拉菜单

4 fieldset元素

fieldset元素可将表单内的相关元素分组、打包, 和legend搭配使用

5 HTML5新增 iInput表单(一)

6 HTML5新增 input表单(二)

7 新增占位符焦点多选属性

8 autocomplete属性

输入内容自动记录,方便下次快速输入

autocomplete必须满足两个条件才会起作用,一是必须有提交按钮,二是必须给给他名字,名字是什么无所谓,例如上面“123”

9 内容不能为空和获得焦点属性

required是提示输入内容不能为空

accesskey是一个快捷键属性,如上字母“s”,意思是在页面中按“ctrl+s”可以将光标移至此文本框

10 表单综合案例学生档案

显示效果如下(马赛克不算):

11 embed引入网上视频

多媒体标签 embed:定义嵌入的内容,embed可以用来插入各种多媒体,格式可以是Mid、Wav、AFF、AU、MP3等等。Url为音频或视频文件及其路径,可以是相对路径或绝对路径

因为兼容性问题,我们这里只讲解插入网络视频,后面H5会讲解audio和video视频多媒体。

12 播放音频 audio

autoplay是自动播放,controls是显示播放器,Loop是循环次数

每个浏览器的显示样式有所不同,每个浏览器支持的音频格式有所不同

Source可以提供多个音频格式,以便兼容各种浏览器。

13 播放视频 video

跟音频播放用法一样

看不懂的小伙伴不要气馁,后续的分享中将持续解释,只要你跟着我分享的课程从头到尾去学习,每篇文章看三遍,一个月后,回过头来看之前的文章就会感觉简单极了。

第一阶段HTML5的所有章节都已结束,下篇文章将分享《第二阶段 CSS3》小伙伴们不要错过哟!