HTML语义化

什么是HTML语义化?
根据内容的结构,选择合适的HTML标签。使代码优雅易读易维护且有助于爬虫抓取更多的有效信息。

 

HTML语义化的优点
1、在没有CSS的情况下,页面也能呈现出很好的内容结构;
2、有利于SEO:和搜索引擎建立良好沟通,有助于爬虫抓取更多的有效信息(爬虫依赖于标签来确定上下文和各个关键字的权重);
3、方便其他设备解析(如屏幕阅读器、盲人阅读器、移动设备)以意义的方式来渲染网页;
4、便于团队开发和维护,语义化更具可读性。

 

一些常见html5语义化标签
1、<title> 元素是最重要的 HTML 元素之一。它的主要功能是描述网页的内容。
  即使标题不是网页的一个可见的部分,它对于提升网站的品质依然是重要的,这是因为它在以下位置都是可见的:
    ---搜索引擎列表
    ---窗口的标题栏
    ---用户的书签中
  标题应当尽可能地短,并具有可描述性。


2、<hn></hn>:h1~h6分级标题,用于创建页面信息的层级关系。
  对于搜索引擎而言,如果标题与搜索词匹配,这些标题就会被赋予很高的权重,尤其是h1。
  由于 h 元素拥有确切的语义,因此请您慎重地选择恰当的标签层级来构建文档的结构。因此,请不要利用标题标签来改变同一行中的字体大小。相反,我们应当使用层叠样式表定义来达到漂亮的显示效果。


3、<header></header>:页眉。通常包括网站标志、主导航、全站链接以及搜索框。
  也适合对页面内部一组介绍性或导航性内容进行标记。<header>标签是HTML5中的新标签。


4、<nav></nav>:标记导航。仅对文档中重要的链接群使用。
  html5规范不推荐对辅助性页脚链接使用nav,除非页脚再次显示顶级全局导航、或者包含招聘信息等重要链接。<nav>标签是HTML5中的新标签。


5、<main></main>:页面主要内容。
  <main>元素中的内容对于文档来说应当是唯一的。它不应包含在文档中重复出现的内容,比如侧栏、导航栏、版权信息、站点标志或搜索表单。
  注释:在一个文档中,不能出现一个以上的<main>元素。<main>元素不能是以下元素的后代:<article>、<aside>、<footer>、<header> 或 <nav>。
  <main>标签是HTML5中的新标签。


6、<article></article>:定义外部的内容。
  外部内容可以是来自一个外部的新闻提供者的一篇新的文章,或者来自blog的文本,或者是来自论坛的文本。亦或是来自其他外部源内容。


7、<section></section>:定义文档中的节(section、区段)。比如章节、页眉、页脚或文档中的其他部分。
  如果只是为了添加样式,请用div!
  <section>标签是HTML5中的新标签。属性cite,section的URL,假如section摘自web的话。


8、<aside></aside>:指定附注栏,包括引述、侧栏、指向文章的一组链接、广告、友情链接、相关产品列表等。
  如果放在main内,应该与所在内容密切相关。


9、<footer></footer>:页脚。
  只有当父级是body时,才是整个页面的页脚。


10、<small></small>:标签定义小型文本(和旁注)。


11、<strong></strong>:表示内容重要性。


12、<em></em>:标记内容着重点(大量用于提升段落文本语义)。


13、<mark></mark>:突出显示文本,提醒读者。


14、<figure></figure>:规定独立的流内容(图像、图表、照片、代码等等)。

  figure元素的内容应该与主内容相关,但如果被删除,则不应对文档流产生影响。


15、<figcaption></figcaption>:figure的标题,必须是figure内嵌的第一个或者最后一个元素。


16、<cite></cite>:通常表示它所包含的文本对某个参考文献的引用,比如书籍或者杂志的标题。


17、<blockquote></blockquote>:引述文本,默认新的一行显示。


18、<q></q>:短的引述(跨浏览器问题,尽量避免使用)。
  可以对blockquoto和q元素使用cite属性(不是cite元素!),对搜索引擎自动化工具有用。cite="URL"引述来源地址。


19、<time></time>:标签定义日期或时间,或者两者。
  <time>标签是HTML5中的新标签。


20、<abbr></abbr>:解释缩写词。使用title属性可提供全称。


21、<dfn></dfn>:标记那些对特殊术语或短语的定义。


22、<address></address>:定义文档或文章的作者/拥有者的联系信息。
  如果<address>元素位于<body>元素内,则它表示文档联系信息。
  如果<address>元素位于<article>元素内,则它表示文章的联系信息。
  <address>元素中的文本通常呈现为斜体。大多数浏览器会在 address 元素前后添加折行。


23、<del></del>:移除的内容。


24、<ins></ins>:添加的内容。


25、<code></code>:用于表示计算机源代码或者其他机器可以阅读的文本内容。


26、<pre></pre>:预格式化文本。保留文本固有的换行和空格。
  <pre>标签的一个常见应用就是用来表示计算机的源代码。


27、<meter></meter>标签定义度量衡。仅用于已知最大和最小值的度量。
  例:<meter min="0" max="20">5</meter>
    <meter>2 out of 10</meter>
    <meter>30%</meter>
  <meter>标签是HTML5中的新标签。


28、<progress></progress>:定义运行中的进度(进程)。
  可以使用 <progress> 标签来显示 JavaScript 中耗费时间的函数的进度。


29、<details></details>标签用于描述文档或文档某个部分的细节。
  <details>标签是HTML5中的新标签。目前只有Chrome支持<details>标签。


30、<label></label>标签为input元素定义标签(label)。
  label元素不会向用户呈现任何特殊的样式。不过,它为鼠标用户改善了可用性,因为如果用户点击label元素内的文本,则会切换到控件本身。
  <label>标签的for属性应该等于相关元素的id元素,以便将它们捆绑起来。

posted @ 2018-07-14 16:29  樱桃小丸籽  阅读(270)  评论(0编辑  收藏  举报