HTML语义化的案例分析 | 豆包MarsCode AI刷题

53 阅读4分钟

语义化标签(Semantic Tags)是指那些能够明确描述其包含内容或功能的HTML标签。这些标签不仅仅是简单的容器,它们还向浏览器、搜索引擎、开发者以及使用辅助技术的用户提供了关于页面内容结构的额外信息。

常见的语义化标签

常见的HTML语义化标签及其用途:

  1. <header>

    • 定义文档或节的页眉。
    • 通常包含网站的标题、标志、主导航、全站链接以及搜索框等。
  2. <nav>

    • 定义导航链接。
    • 用于包含对文档中重要部分的链接,如主导航、页内导航等。
  3. <main>

    • 定义文档的主体内容。
    • 一个页面中只能使用一次,用于包含页面的主要内容区域。
  4. <article>

    • 定义一个可以独立展示或分发的内容块。
    • 如新闻文章、博客文章等,可以包含自己的标题、内容、页脚等。
  5. <section>

    • 定义文档中的节(section、区段)。
    • 用于将文档划分为不同的部分,如章节、页眉、页脚等。
  6. <aside>

    • 定义一个页面或文章的旁注栏。
    • 如侧边栏、广告、友情链接、相关产品列表等,通常与主要内容相关但又不是主要内容的一部分。
  7. <footer>

    • 定义文档或节的页脚。
    • 通常包含版权信息、联系方式、作者信息等。
  8. <h1> 到 <h6>

    • 定义标题层级。
    • <h1>(最高级别)到<h6>(最低级别),用于表示文档中的标题和子标题。
  9. <ul> 和 <ol>

    • 定义无序列表和有序列表。
    • <ul>用于包含一组无序的项目,<ol>用于包含一组有序的项目。
  10. <li>

    • 定义列表项。
    • 用于在<ul><ol>中列出具体的项目。
  11. <address>

    • 定义作者、相关人士或组织的联系信息。
    • 如电子邮件地址、指向联系信息页的链接等。
  12. <figure> 和 <figcaption>

    • <figure>规定独立的流内容(图像、图表、照片、代码等)。
    • <figcaption>定义<figure>元素的标题。
  13. <cite>

    • 表示所包含的文本对某个参考文献的引用。
    • 如书籍或杂志的标题。
  14. <blockquote>

    • 定义块引用。
    • 块引用拥有它们自己的空间,通常用于表示长引用。
  15. <q>

    • 表示短的引述。
    • 通常用于表示短小的、内联的引用。

这些语义化标签使得HTML代码更加清晰、易于理解和维护,同时也提高了网页的可访问性和搜索引擎优化效果。在编写HTML时,应尽量使用这些语义化标签来构建页面的结构。

实际网站HTML结构分析

以本站为例,分析其HTML结构:稀土掘金

image.png 除了上方图片标注的地方之外,列表地方都使用到了ulolli等标签。在本站的HTML结构中,语义化标签如<header><nav><main><aside>等被用于定义页面的主要部分,提供了清晰的结构。同时,非语义化标签如<div>也被广泛使用,主要用于布局和样式的调整。

语义化标签与非语义化标签对比

  1. 语义化标签

    • 含义明确:如<header><footer><article><section><nav>等,每个标签的名字都能准确描述它所包围的内容。
    • 提高可访问性:对于屏幕阅读器等辅助技术,语义化标签能够提供更多的信息,帮助用户更好地理解页面结构。
    • 有助于SEO:搜索引擎能够更好地理解和索引页面内容,从而提高页面的搜索排名。
  2. 非语义化标签

    • 没有内在含义:如<div><span>等,本身并不传达任何具体的内容或结构信息。它们只是容器标签,用于布局或分组。
    • 依赖CSS和JavaScript:这些标签的样式和行为通常由CSS和JavaScript控制。
    • 对SEO不直接有帮助:搜索引擎无法从这些标签中获取页面内容的语义信息,因此对SEO的优化作用较弱。

总结

通过分析实际网站的HTML结构,可以深入了解语义化标签和非语义化标签在网页设计中的应用。

  • 语义化标签通过提供明确的语义信息,有助于增强网页的可访问性、SEO效果和代码可读性。
  • 非语义化标签则更适合用于布局和样式控制。