HTML5新标签与传统DIV标签页面布局区别

在之前的HTML页面中,大家基本上都是用了Div+CSS的布局方式。而搜索引擎去抓取页面的内容的时候,它只能猜测你的某个Div内的内容是文章内容容器,或者是导航模块的容器,或者是作者介绍的容器等等。也就是说整个HTML文档结构定义不清晰,HTML5中为了解决这个问题,专门添加了:页眉、页脚、导航、文章内容等跟结构相关的结构元素标签。

在讲这些新标签之前,我们先看一个普通的页面的布局方式:

上图中我们非常清晰的看到了,一个普通的页面,会有头部,导航,文章内容,还有附着的右边栏,还有底部等模块,而我们是通过class进行区分,并通过不同的css样式来处理的。但相对来说class不是通用的标准的规范,搜索引擎只能去猜测某部分的功能,另外就是此页面程序交给视力障碍人士来阅读的话,文档结构和内容也不会很清晰。而HTML5新标签带来的新的布局则是下面这种情况:

相应代码:

<body><header>...</header><nav>...</nav><article><section>...</section></article><aside>...</aside><footer>...</footer></body>

有了上面的直接的感官的认识后,我们下面一一来介绍HTML5中的相关结构标签。


HTML5中的相关结构标签

section标签

<section>标签,定义文档中的节。比如章节、页眉、页脚或文档中的其它部分。一般用于成节的内容,会在文档流中开始一个新的节。它用来表现普通的文档内容或应用区块,通常由内容及其标题组成。但section元素标签并非一个普通的容器元素,它表示一段专题性的内容,一般会带有标题。
当我们描述一件具体的事物的时候,通常鼓励使用article来代替section;当我们使用section时,仍然可以使用h1来作为标题,而不用担心它所处的位置,以及其它地方是否用到;当一个容器需要被直接定义样式或通过脚本定义行为时,推荐使用div元素而非section。

<section><h1>section是什么?</h1><h2>一个新的章节</h2><article><h2>关于section</h1><p>section的介绍</p>...</article></section>

article标签

<article>是一个特殊的section标签,它比section具有更明确的语义,它代表一个独立的、完整的相关内容块,可独立于页面其它内容使用。例如一篇完整的论坛帖子,一篇博客文章,一个用户评论等等。一般来说,article会有标题部分(通常包含在header内),有时也会包含footer。article可以嵌套,内层的article对外层的article标签有隶属关系。例如,一篇博客的文章,可以用article显示,然后一些评论可以以article的形式嵌入其中。

<article><header><hgroup><h1>这是一篇介绍HTML 5结构标签的文章</h1><h2>HTML 5的革新</h2></hgroup><time datetime="2011-03-20">2011.03.20</time></header><p>文章内容详情</p></article>

nav标签

<nav>标签代表页面的一个部分,是一个可以作为页面导航的链接组,其中的导航元素链接到其它页面或者当前页面的其它部分,使html代码在语义化方面更加精确,同时对于屏幕阅读器等设备的支持也更好。

<nav><ul><li>苹果</li><li>葡萄</li><li>橙子</li></ul></nav>

aside标签

<aside>标签用来装载非正文的内容,被视为页面里面一个单独的部分。它包含的内容与页面的主要内容是分开的,可以被删除,而不会影响到网页的内容、章节或是页面所要传达的信息。例如广告,成组的链接,侧边栏等等。

<aside><h1>作者简介</h1><p>***</p></aside>

header标签

<header>标签定义文档的页眉,通常是一些引导和导航信息。它不局限于写在网页头部,也可以写在网页内容里面。
通常<header>标签至少包含(但不局限于)一个标题标记(<h1>-<h6>),还可以包括<hgroup>标签,还可以包括表格内容、标识、搜索表单、<nav>导航等。

<header><hgroup><h1>网站标题</h1><h1>网站副标题</h1></hgroup></header>

footer标签

<footer>标签定义section或document的页脚,包含了与页面、文章或是部分内容有关的信息,比如说文章的作者或者日期。作为页面的页脚时,一般包含了版权、相关文件和链接。它和<header>标签使用基本一样,可以在一个页面中多次使用,如果在一个区段的后面加入footer,那么它就相当于该区段的页脚了。

<footer>COPYRIGHT@***</footer>

hgroup标签

<hgroup>标签是对网页或区段section的标题元素(h1-h6)进行组合。例如,在一区段中你有连续的h系列的标签元素,则可以用hgroup将他们括起来。

<hgroup><h1>这是一篇介绍HTML 5结构标签的文章</h1><h2>HTML 5的革新</h2></hgroup>

figure 标签

用于对元素进行组合。多用于图片与图片描述组合。

<figure><img src="img.gif" alt="figure标签"  title="figure标签" /><figcaption>这儿是图片的描述信息</figcaption></figure>

总结:

有了新的结构性的标签的标准,让HTML文档更加清晰,可阅读性更强,更利于SEO,也更利于视障人士阅读。


用HTML5新标签构建页面相关推荐

  1. html页面视频标签,html5基础标签(html5视频标签 html5新标签用法)

    点评:html5基础,包括html5视频标签和html5新标签等标签用法,大家参考使用吧 1.  声明的变化 2.  指定字符编码的变化,html5中建议使用utf-8 3.  Html5中允许 没有 ...

  2. 浅谈HTML5新标签的浏览器兼容问题

    HTML5 现在已经不是SGML的子集,主要是关于图像,位置,存储,多任务等功能的增加. ① 新特性: 1)绘画<canvas>. 有关canvas的介绍请见:http://blog.cs ...

  3. html5变动标签新写法,Html5新标签解释及用法

    Html5新标签解释及用法 发布时间:2012-02-17 22:50:45   作者:佚名   我要评论 HTML 5 是一个新的网络标准,目标在于取代现有的 HTML 4.01, XHTML 1. ...

  4. 【Day05】Html5 有哪些新特性?如何处理 Html5 新标签的浏览器兼容问题?如何区分 Html 和 Html5?

    Html5 有哪些新特性?如何处理 Html5 新标签的浏览器兼容问题?如何区分 Html 和 Html5? 一.Html5 新特性 1. 拖拽释放(Drag and drop)API 2. 语义化更 ...

  5. HTML5新标签 w3c

    w3c标准下的HTML5新标签 ,做个归纳总结: H5标签 定义和用法 兼容性 <artical> 规定独立的自包含内容, 支持html中的全局属性, 支持html中的事件属性 IE: 支 ...

  6. HTML5新标签及特性

    HTML5 html经过了第5次重大改版,增加了一些语义化的标签 高版本浏览器支持,ie9以下不支持, html5是向后兼容的,原来html4的 标签仍然可以用 1.新特性 新增语义化元素 新增表单相 ...

  7. HTML表单标签和HTML5新标签

    [HTML表单标签和HTML5新标签] 目录 [HTML表单标签和HTML5新标签] 1. HTML表单标签 1.1input 控件 1.2.label标签 1.3.textarea控件 1.4.下拉 ...

  8. HTML5新标签对IE低版本浏览器的兼容处理

    问题概述:IE8浏览器中还没有添加对HTML5新标签的支持,当在页面中使用HTML5新标签时,新标签不兼容 1)使用JavaScript新增元素的方法解决 注意:使用javascript新增元素的方法 ...

  9. HTML5新标签与特性(笔记)

    HTML5新标签与特性 前言 新增语义化标签 新增标签属性 新增的input的type属性值 多媒体标签 embed audio video 字体图标 前言   HTML5 : HTML 标准的最新版 ...

最新文章

  1. python excel行数_使用python计算excel中的行数
  2. 我错了,有个叫 SelectSingleNode 的可以操作 xml
  3. Windows常用软件列表(2012.03 Update)
  4. java环境变量的配置步骤,实现原理分析
  5. Linux 用户空间和内核空间
  6. Nodejs 中的包、npm 、第三方模块、 package.json 以及 cnpm
  7. 一张图轻松搞懂javascript event对象的clientX,offsetX,screenX,pageX区别
  8. pyqt5 发送键盘信号_Python教程 | Pyqt5实战教程之操作交互处理,原来这么简单!...
  9. js 取得input绑定的datalist中的值_原生JS写一个ToDo Demo
  10. 使用C#客户端访问FTP服务的一个解决方案
  11. C# WebBrowser 设置代理完全解决方案
  12. 全国所有省份行政区域名标准(全国省份2字母拼音缩写标准参考)
  13. 省市区三级联动插件(v-distpicker)
  14. PhotoShop 基本知识
  15. win10显示隐藏文件_u盘内隐藏文件怎么显示 u盘内隐藏文件显示方法【详细步骤】...
  16. 自主导航:赋予移动机器人智能感知与运动的能力
  17. 网课答案查询单页源码+免费题库API接口
  18. heka 0.11.0源码分析--Elasticsearch OutPut插件
  19. Spark Sql练习之疫情简单分析
  20. python mysql where in 对列表(list,,array)问题

热门文章

  1. oracle北京考场,北京oracle数据库培训地址
  2. 近年最佳加密软件:免费、付费、商业工具与服务
  3. 基于Python-tkinter 做了个简单的同步带节线长计算工具
  4. 利用python爬取京东华为旗舰店手机信息(价格、型号、颜色、链接等)
  5. 中国特种电缆市场市场需求预测及竞争战略研究报告2021年版
  6. Pair 智能标注神器,医生的好帮手
  7. Unity使用Animation动画控制物体实现slep旋转
  8. stata做计量入门常用代码一览!
  9. 教你一招不花钱去参加A级大会(高校俱乐部活动)
  10. 25.211(840)——阅读笔记II