HTML5之语义标签
在HTML5标准中,新加了几个用于增添页面语义的标签,这些标签有:article、section、nav和aside等。与别的大多数标签不 同,浏览器在解释渲染这些标签的时候仅仅把它作为普通的div块级元素来处理,不会添加任何额外的展现逻辑;也即,这些标签仅用于增添语义。对于Web开 发人员而言,使用这些标签的实际意义主要有2点:搜索引擎优化,以及增加页面的可用性(accessibility)。
在元素分类上,article、section、nav和aside称之为“Sectioning Content”
article
article元素可用于表示页面上某块具有一定独立性的内容,这个内容可以是一篇文章、论坛上的一个帖子/评论、一篇博客、一个可交互的控件 等。article标签可以嵌套使用,当这么做时,子article元素与父article元素在逻辑上必须有相应的关联。如Web开发者可以将一篇博客 的正文以及评论作为父级article元素,而将其中的各个评论作为子article元素。
article元素内部不能出现main元素 — main元素意指页面的主要内容,当有main元素时,article元素作为main元素的子元素而存在。
section
section元素意指页面或Web应用中的一部分,不同的section互相之间其“主题”或者说“基调”应当有所不同,一般会通过在section元素内放置heading元素(h1-h6)来定义这个“主题”/“基调”。
把section当成div使用是一种错误 — 除了页面可展现的内容,section的子元素不应该承担任何其它角色(样式、行为、辅助标签等)。
nav
nav元素主要用于包含页面上的导航链接,因此在nav元素中直接包含ul元素或者ol元素是一种非常常见的做法。尽管如此,nav中也可以不包含ul或者ol元素,比如在nav元素中可以包含一个文章段落(p标签),而在该文章段落中包含一些链接(a标签)。
与article元素一样,nav元素内部不能出现main元素。
aside
aside元素一般用于表示页面上的侧边栏,不过该元素仅仅只在语义上表示“侧边栏”,浏览器在解析渲染该标签时只会将其作为普通的div块级元素来处理。如果要真正得到侧边栏的效果,则Web开发人员需要自己编写CSS来实现。
HTML5之语义标签的更多相关文章
- html5 新增语义标签
一份模板: <body> <header> <hgroup> <h1>Page title</h1> <h2>Page subt ...
- html5新增语义标签
1.header <header> 标签定义文档的页眉(介绍信息). 2.nav <nav> 标签定义导航链接的部分. 3.article <article> 标签 ...
- Html5 中的新语义标签
1.1 语义标签对于我们并不陌生,如<p>表示一个段落.<ul>表示一个无序列表<h1> ~ <h6>表示一系列标题等,在此基础上HTML5增加了大量更 ...
- HTML语义化:HTML5的新标签及IE5.5~9的部分兼容方案
一.前言 本文将介绍HTML5中新增的语义化标签,及在IE5.5~9(IE9已经开始支持部分HTML5新标签了)支持这些新标签的兼容性处理. 目录一坨: 二.语义化标签:article.aside.t ...
- HTML5 十大新特性(一)——语义标签
说语义标签前先来理解下什么叫语义化,当下html是靠div+css来铸造页面的整体框架和结构的,通篇大量的div可读性极低,因此诞生了这些特殊的标签,简单地说就是见名知义,使页面更清晰,方便维护和开发 ...
- HTML5之语义化标签
HTML 5的革新之一:语义化标签一节元素标签. 在HTML 5出来之前,我们用div来表示页面章节,但是这些div都没有实际意义.(即使我们用css样式的id和class形容这块内容的意义).这些标 ...
- 浅谈html语义化标签,Html5新增语义化标签
Html语义化标签,Html5新增语义化标签 自己在学习的期间,整理了下html关于语义化标签的一些知识,列的不是很全. 希望大家有新的见解可以给我留言,我会补充上去,谢谢大家 1.什么是语义化标签? ...
- html5中的一些新语义标签
<header> <nav> <ul> <li><a href="">栏目1</a></li> ...
- HTML5中的语义标签兼容IE8以及更低版本的浏览器
看某教程,说让HTML5的这些语义标签能够兼容低版本的浏览器,原文是“你可以设置css的display属性为block”.很好理解,就设置css样式为block嘛,那就直接设置咯: header, s ...
随机推荐
- 实现iframe 全屏显示
componentDidMount(){var elem = document.getElementById('iframe');; var elem = document.getElementByI ...
- vim显示行号、语法高亮、自动缩进的设置
转载自:http://blog.csdn.net/chuanj1985/article/details/6873830 在UBUNTU中vim的配置文件存放在/etc/vim目录中,配置文件名为v ...
- 其原因可能是堆被损坏,这说明**.exe中或它加载的任何DLL中有Bug
最近在写一个写日志文件的线程时,调用了HeapAlloc/HeapFree 申请/释放堆缓冲内存.调用HeapFree释放有个条件就是,日志的空闲缓冲队列中内存块超过100个.在测试的时候,发现调用H ...
- 关于mysql数据库字符集优先级问题
mysql数据库可以分别设置数据库字符集.表字符集和表字段字符集. 1.数据库字符集 < 表字符集 < 表字段(列)字符集. 例如数据库字符集为gbk -- GBK Simplified ...
- 《SSM框架搭建》三.整合spring web
感谢学习http://blog.csdn.net/zhshulin/article/details/37956105#,还是修改了spring到最新的版本和接口开发示例 根据前一篇日志,已经有了myb ...
- Codeigniter
最近准备接手改进一个别人用Codeigniter写的项目,虽然之前也有用过CI,但是是完全按着自己的意思写的,没按CI的一些套路.用在公众的项目,最好还是按框架规范来,所以还是总结一下,免得以后别人再 ...
- day--6_python常用模块
常用模块: time和datetime shutil模块 radom string shelve模块 xml处理 configparser处理 hashlib subprocess logging模块 ...
- DGV表头双行
try { if (e.RowIndex < 0) { RectangleF _rect = e.CellBounds; Pen _pen = new Pen(Color.Black); Pen ...
- 一步一步学WebSocket (一) 初识WebSocket
众所周知,Http协议是无状态的,并且是基于Request/Response的方式与服务器进行交互,也就是我们常说的单工模式.但是随着互联网的发展,浏览器与服务端进行双向通信需求的增加,长轮询向服务器 ...
- CentOS7安装问题及解决方案记录
CentOS7系统已安装好: 一.我想要实现系统桌面化. 需要运行 yum 命令. 出现第一个error: 1.提示错误:can not find a valid baseurl 86_X64.... ...