青训营笔记1 | HTML语义化案例分析

82 阅读3分钟

1. HTML5新特性

  什么是HTML5?维基百科表示:HTML5是HTML最新的修订版本,由万维网联盟(W3C)于2014年完成标准制定。相比之前的版本,HTML5添加了一系列新语法特征,主要包括:

  1. 音视频以及更语义化的标签;
  2. SVGcanvas标签;
  3. 存储:localStoragesessionStorage以及indexedDB
  4. Web WorkerWebSocketShadow DOMWeb Component等;

HTML5中新增的语义化标签主要包括:

标签名含义
header页面头部
nav导航区
section组、部 分
article文章区
aside侧边栏
footer页脚

2. 语义化标签的理解

  1. 在HTML中,语义化可以理解为标签名和对应的功能相关,比如按钮用button、标题用h1~h6input的文本用label等。但div几乎是万能的,而且相比上面的具体标签,div纯净到了啥也没有的地步,没有默认的样式和交互特征,需要手动添加;
  2. 和标签名div相比,HTML5中新的语义化标签更能代表标签所处位置和拥有的功能,一看便知:

image.png

  1. 不同语义化标签的语义化程度不同,比如从section可以得知这是一个组或者一块区域、一个部分,但article表示这不单是一个部分,还是写文章的部分;
  2. 对于语义化标签的使用,建议是用对比不用好、不用比用错好,如果对使用场景不太了解,写一堆div也未尝不可,防止产生反向的效果;

3. 语义化标签的优点

  • 有利于SEO:爬虫可以根据标签名确定权重等,以抓取更多的有效信息;
  • 便于开发和维护:HTML结构更清晰,可读性更高;
  • 便于其他设备的解析:如屏幕阅读器、盲人阅读器等,通过识别具体语义化标签可以解析文章结构,进行不同的处理;

4. 语义化案例分析

简书

  简书主页对自己的介绍是:“简书是一个优质的创作社区,在这里,你可以任性地创作,一篇短文、一张照片、一首诗、一幅画……我们相信,每个人都是生活中的艺术家,有着无穷的创造力”。

  找一篇文章点进去看看,可以发现页面头部、导航栏使用了headernav标签:

image.png

  文章详情页也使用了较多的语义化标签:

image.png

  以及文章底部:

image.png

  然后再来看看head标签:

image.png

  可以看出简书在SEO优化、用户体验方面做了很多适配,其实这在大部分用户生产内容(UGC)模式的网站或社区中很常见,除非部分项目太老。

Medium

  Medium也是一个用户生产内容模式的网站,可以看作一个博客平台或微信公众号,界面也是非常的干净,只有内容(就不放对比图了),同时语义化做的也是比较不错的:

image.png

5. 总结

  在有时间精力、追求SEO优化和用户无障碍(来自MDN)使用时,尽量使用语义化标签,但同时也不建议随意使用,在不合适的地方使用反而会起到负面作用,此时不如直接用div用对比不用好、不用比用错好