一起了解一下h5新增的语义元素

554 阅读4分钟

这是我参与8月更文挑战的第15天,活动详情查看:8月更文挑战

HTML5是什么?

一般广义而言的HTML5,则包含了HTML、CSS 和JavaScript三个部分,不单单只是HTML部分而已,CSS3和JavaScript也有许多的创新,让整个网页程式功能更加缤纷。

语义化标签

语义元素清楚地向浏览器和开发者描述其意义。

非语义元素的例子:div 和 span - 无法提供关于其内容的信息。

语义元素的例子:form、table 以及 img - 清晰地定义其内容。

语义化标签的用处

语意化的网络是可以让电脑能够更加理解网页的内容,对于像是搜寻引擎的优化(SEO)或是推荐系统可以有很大的帮助。

h5新增的语义化标签
  • article
  • aside
  • details
  • figcaption
  • figure
  • footer
  • header
  • main
  • mark
  • nav
  • section
  • summary
  • time
怎么使用语义化标签
header

网页中可以包含多个header元素。按照 HTML5 的规定,header都应包含某个级别的标题,所以应隐式或显式地包含标题,通常将不希望显示的标题设置为display: none;,一方面遵守规范,另一方面则提供了无障碍阅读而不至于影响到页面设计。也可能包含其他元素,比如 Logo、搜索框、作者名称,等等。

footer

标准规定footer标签仅仅可以包含版权、来源信息、法律限制等等之类的文本或链接信息。如果想要在页脚中包含其它内容,可以使用熟悉的div来帮忙。footer元素内的作者信息应包含在address元素中。

nav

导航栏使用nav,通常仅仅在页面的主要导航部分使用它,导航部分的常见示例是菜单,目录和索引。

section

包含在HTML文档中的独立部分,它没有更具体的语义元素来表示,一般来说会有包含一个标题section标签适合标记的内容区块:与页面主体并列显示的小内容块,但搜索结果列表地图显示及其控件没有特定元素,可以放在section里。

如果 section 元素的内容可以单独在多个媒体上发表,应该使用article 而不是 section

article

网站中的独立结构。可独立分配的或可复用的结构,可能是论坛帖子、杂志或新闻文章、博客、用户提交的评论、交互式组件

每个article,通常包括标题(h1 - h6元素)作为article元素的子元素。

aside

mdn:通常表现为侧边栏或者标注框,可以被单独的拆分出来而不会使整体受影响。

w3c:aside 元素页面主内容之外的某些内容(比如侧栏)。aside 内容应该与周围内容相关。

上面让我有点懵

mark

不咋懂。。。

定义重要的或强调的文本。

当用在引用中时,通常用来显示有特殊意义的文本,但不在原材料中标记出来;或者是用来显示特殊审查的材料,即使原作者不认为它特别重要。

另外,mark元素还用来显示与用户当前活动相关的一部分文档内容。例如,它可能被用于显示匹配搜索结果中的单词。

不要为了语法高亮而用 mark 元素; 你应该用 strong 元素结合适当的CSS来实现这个目的(语法高亮)。

time

定义日期/时间。此元素意在以机器可读的格式表示日期和时间。 有安排日程表功能的应用可以利用这一点。

figure & figcaption

figure 元素代表一段独立的内容, 经常与说明 figcaption 配合使用

figure经常是在主文中引用的图片,插图,表格,代码段等等,当这部分转移到附录中或者其他页面时不会影响到主体

figcaptionfigure块里是第一个或最后一个

details & summary

仅在被切换成展开状态时,它才会显示内含的信息。summary元素可为该部件提供概要或者标签。

summary元素 用作 一个details元素的一个内容的摘要,标题或图例。