HTML5 语义化标签(移动端必备)


Posted in HTML / CSS onAugust 23, 2021

距HTML5标准规范制定完成并公开发布已经有好些年了,面试时也少不了要问对HTML5语义化得理解。但是在实际运用时,真正使用HTML5标签来开发的似乎不是很多(ps:查看了几个巨头公司网站推论),可能一部分原因是仍有部分用户使用在使用低版本浏览器。

但是就我个人而言,因选取一些标签时会比较纠结,所以仍使用了div。(PS:正是因为这样,才有了这篇文章的,没错,以后要注意语义化了)

什么是语义化?就是用合理、正确的标签来展示内容,比如h1~h6定义标题。

语义化优点:

易于用户阅读,样式丢失的时候能让页面呈现清晰的结构。
有利于SEO,搜索引擎根据标签来确定上下文和各个关键字的权重。
方便其他设备解析,如盲人阅读器根据语义渲染网页
有利于开发和维护,语义化更具可读性,代码更好维护,与CSS3关系更和谐。

今天先介绍主体结构标签,如图所示:

HTML5 语义化标签(移动端必备)

1、<header>

<header>定义文档或者文档的部分区域的页眉,应作为介绍内容或者导航链接栏的容器。

在一个文档中,您可以定义多个<header>元素,但需要注意的是<header>元素不能作为<address>、<footer> 或 <header> 元素的子元素。

2、<nav>

<nav>描述一个含有多个超链接的区域,该区域包含跳转到其他页面或页面内部其他部分的链接列表。

在一个文档中,可定义多个<nav>元素。

3、<main>

<main> 定义文档的主要内容,该内容在文档中应当是独一无二的,不包含任何在文档中重复的内容,比如侧边栏,导航栏链接,版权信息,网站logo,搜索框(除非搜索框作为文档的主要功能)。

需要注意的是在一个文档中不能出现多个<main>标签。

4、<article>

<article>元素表示文档、页面、应用或网站中的独立结构,是可独立分配的、可复用的结构,如在发布中,它可能是论坛帖子、杂志或新闻文章、博客、用户提交的评论、交互式组件,或者其他独立的内容项目。

当<article>元素嵌套使用时,则该元素代表与外层元素有关的文章。例如,代表博客评论的<article>元素可嵌套在代表博客文章的<article>元素中。

5、<aside>

<aside> 元素表示一个和其余页面内容几乎无关的部分,被认为是独立于该内容的一部分且可以被单独的拆分出来而不会影响整体。通常表现为侧边栏或嵌入内容。

6、<footer>

<footer>定义最近一个章节内容或者根节点元素的页脚。一个页脚通常包含该章节作者、版权数据或者与文档相关的链接等信息。

使用footer插入联系信息时,应在 footer 元素内使用 <address> 元素。

注意不能包含<footer>或者<header>

7、<section>

<section>表示文档中的一个区域(或节),比如,内容中的一个专题组。

如果元素内容可以分为几个部分的话,应该使用 <article> 而不是 <section>。
不要把 <section> 元素作为一个普通的容器来使用,特别是当<section>仅仅是为了美化样式或方便脚本使用的时候,应使用<div>。

这几个标签,比较容易混淆的是<section>、<article>,所以这里特别说明:

“Authors are encouraged to use the article element instead of the section element when it would make sense to syndicate the contents of the elemen.”

通俗来说就是<article>比<section>更具有独立性、完整性。可通过该段内容脱离了所在的语境,是否完整、独立来判断。

 
HTML / CSS 相关文章推荐
a标签的css样式四个状态
Mar 09 HTML / CSS
使用CSS3编写灰阶滤镜来制作黑白照片效果的方法
May 09 HTML / CSS
css3 flex布局 justify-content:space-between 最后一行左对齐
Jan 02 HTML / CSS
CSS3制作皮卡丘动画壁纸的示例
Nov 02 HTML / CSS
HTML5 Web Database 数据库的SQL语句的使用方法
Dec 09 HTML / CSS
HTML5中的autofocus(自动聚焦)属性介绍
Apr 23 HTML / CSS
Html5 语法与规则简要概述
Jul 29 HTML / CSS
深入理解HTML的FormData对象
May 17 HTML / CSS
html5 初试 indexedDB(推荐)
Jul 21 HTML / CSS
html5.2 dialog简介详解
Feb 27 HTML / CSS
uniapp+Html5端实现PC端适配
Jul 15 HTML / CSS
HTML5拖拽文件上传的示例代码
Mar 04 HTML / CSS
CSS3 Tab动画实例之背景切换动态效果
Aug 23 #HTML / CSS
CSS 使用 resize 实现图片拖拽切换预览功能(强大功能)
如何使用 resize 实现图片切换预览功能
Aug 23 #HTML / CSS
css中z-index: 0和z-index: auto的区别
Aug 23 #HTML / CSS
CSS Transition通过改变Height实现展开收起元素
Aug 07 #HTML / CSS
css3中transform属性实现的4种功能
Aug 07 #HTML / CSS
从QQtabBar看css命名规范BEM的详细介绍
Aug 07 #HTML / CSS
You might like
全局记录程序片段的运行时间 正确找到程序逻辑耗时多的断点
2011/01/06 PHP
php字符编码转换之gb2312转为utf8
2013/10/28 PHP
php计算整个目录大小的方法
2015/06/19 PHP
Jquery 基础学习笔记
2009/05/29 Javascript
基于jQuery的左右滚动实现代码
2010/12/03 Javascript
jquery 如何动态添加、删除class样式方法介绍
2012/11/07 Javascript
由简入繁实现Jquery树状结构的方法(推荐)
2016/06/10 Javascript
Spring MVC中Ajax实现二级联动的简单实例
2016/07/06 Javascript
ajax接收后台数据在html页面显示
2017/02/19 Javascript
BootStrap 动态表单效果
2017/06/02 Javascript
js用类封装pop弹窗组件
2017/10/08 Javascript
对angular4子路由&amp;辅助路由详解
2018/10/09 Javascript
详解javascript对数组和json数组的操作
2019/04/15 Javascript
详解iview的checkbox多选框全选时校验问题
2019/06/10 Javascript
TypeScript 引用资源文件后提示找不到的异常处理技巧
2020/07/15 Javascript
python可视化实现代码
2019/01/15 Python
Python实现html转换为pdf报告(生成pdf报告)功能示例
2019/05/04 Python
python 求定积分和不定积分示例
2019/11/20 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
2020/10/20 Python
使用CSS3制作版头动画效果
2020/12/24 HTML / CSS
解决canvas转base64/jpeg时透明区域变成黑色背景的方法
2016/10/23 HTML / CSS
办公文员的工作岗位职责
2013/11/12 职场文书
满月酒答谢词
2014/01/14 职场文书
中学运动会广播稿
2014/01/19 职场文书
寒假实习自荐信
2014/01/26 职场文书
小学国庆节活动方案
2014/02/11 职场文书
护理中职生求职信范文
2014/02/24 职场文书
一份关于丢失公司财物的检讨书
2014/09/19 职场文书
目标责任书格式范文
2015/05/11 职场文书
同意离婚答辩状
2015/05/22 职场文书
男方家长婚礼致辞
2015/07/27 职场文书
只用50行Python代码爬取网络美女高清图片
2021/06/02 Python
总结Python使用过程中的bug
2021/06/18 Python
php png失真的原因及解决办法
2021/10/24 PHP
JavaScript异步操作中串行和并行
2021/11/20 Javascript
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers