关于HTML的语义化标签和无语义化标签

HTML语义化标签和无语义化标签是Web开发中常用的两种标签类型,它们的使用对于构建可读性高、易维护、SEO友好和语义化的结构化文档非常重要。下面将详细解释它们的区别和用法。

HTML语义化标签

HTML语义化标签是指按照文档内容所表达的语义含义来编写HTML标签,它们不仅仅可以提升页面的可读性和可访问性,还可以提高搜索引擎的抓取效率和页面的排名。HTML5中新增了很多语义化标签,主要包括:

  • header:页面或者文章的头部,通常包括 logo、标题、导航等。
  • nav:页面中的导航菜单,通常包括站内链接和外部链接。
  • aside:页面内容之外的附属信息,通常包括广告、标签云、推荐文章等。
  • section:页面中的一块内容,通常包括文章的一段或者一个模块。
  • article:独立的文章或者页面主体,通常包括标题、作者、发布日期等信息。
  • footer:页面或者文章的底部,通常包括版权信息、联系方式等。

下面是一个示例,使用语义化标签来构建一个简单的博客页面结构:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>My Blog</title>
</head>
<body>
  <header>
    <h1>My Blog</h1>
    <nav>
      <ul>
        <li><a href="#">Home</a></li>
        <li><a href="#">About</a></li>
        <li><a href="#">Contact</a></li>
      </ul>
    </nav>
  </header>
  <section>
    <article>
      <header>
        <h2>My First Post</h2>
        <p>By John Doe</p>
        <time datetime="2021-08-01">August 1, 2021</time>
      </header>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ac elit quis ligula vulputate bibendum. Donec bibendum imperdiet lacinia. Nam auctor fringilla nisi, vel porta eros consectetur a.</p>
    </article>
    <article>
      <header>
        <h2>My Second Post</h2>
        <p>By Jane Smith</p>
        <time datetime="2021-08-02">August 2, 2021</time>
      </header>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ac elit quis ligula vulputate bibendum. Donec bibendum imperdiet lacinia. Nam auctor fringilla nisi, vel porta eros consectetur a.</p>
    </article>
  </section>
  <aside>
    <h3>Categories</h3>
    <ul>
      <li><a href="#">Web Development</a></li>
      <li><a href="#">JavaScript</a></li>
      <li><a href="#">CSS</a></li>
    </ul>
  </aside>
  <footer>
    <p>Copyright © 2021 My Blog</p>
  </footer>
</body>
</html>

无语义化标签

无语义化标签是没有任何语义含义的标签,它们主要用于页面布局和样式控制,如div、span、table等。它们不仅使HTML代码难以理解和维护,还给搜索引擎抓取造成了困扰,因为搜索引擎更倾向于按照语义化标签来处理文档内容。

下面是一个示例,使用无语义化标签来构建一个简单的博客页面结构:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>My Blog</title>
  <style>
    .header {
      display: flex;
      justify-content: space-between;
    }
    .nav {
      display: flex;
      list-style: none;
      margin: 0;
      padding: 0;
    }
    .nav li {
      margin-right: 10px;
    }
    .section {
      display: flex;
      justify-content: space-between;
    }
    .aside {
      display: flex;
      flex-direction: column;
    }
  </style>
</head>
<body>
  <div class="header">
    <h1>My Blog</h1>
    <ul class="nav">
      <li><a href="#">Home</a></li>
      <li><a href="#">About</a></li>
      <li><a href="#">Contact</a></li>
    </ul>
  </div>
  <div class="section">
    <div class="article">
      <h2>My First Post</h2>
      <p>By John Doe</p>
      <time datetime="2021-08-01">August 1, 2021</time>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ac elit quis ligula vulputate bibendum. Donec bibendum imperdiet lacinia. Nam auctor fringilla nisi, vel porta eros consectetur a.</p>
    </div>
    <div class="article">
      <h2>My Second Post</h2>
      <p>By Jane Smith</p>
      <time datetime="2021-08-02">August 2, 2021</time>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ac elit quis ligula vulputate bibendum. Donec bibendum imperdiet lacinia. Nam auctor fringilla nisi, vel porta eros consectetur a.</p>
    </div>
    <div class="aside">
      <h3>Categories</h3>
      <ul>
        <li><a href="#">Web Development</a></li>
        <li><a href="#">JavaScript</a></li>
        <li><a href="#">CSS</a></li>
      </ul>
    </div>
  </div>
  <div class="footer">
    <p>Copyright © 2021 My Blog</p>
  </div>
</body>
</html>

综上所述,HTML语义化标签和无语义化标签的选择取决于实际情况。如果想要提高页面的可读性和可访问性,同时提高搜索引擎的抓取效率和页面的排名,就应该选择语义化标签;如果只是为了实现页面布局和样式控制,就可以使用无语义化标签。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:关于HTML的语义化标签和无语义化标签 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • 实现点击按钮后CSS加载效果的实现

    为了实现点击按钮后CSS加载效果的实现,可以使用以下步骤: 定义需要加载的CSS样式:创建一个CSS文件,添加需要加载的CSS样式,并保存至项目文件夹中。在此示例中,我们将采用一个简单的例子,定义一个类 active,并将其的 background-color 属性改为红色。 .active { background-color: red; } 创建HTML…

    css 2023年6月10日
    00
  • 纯CSS实现酷炫的霓虹灯效果(附demo)

    下面是“纯CSS实现酷炫的霓虹灯效果(附demo)”的完整攻略。 1.准备工作 首先,准备一个HTML文件,并提供一个基础的CSS文件。在HTML文件中,创建一个div元素,并给它添加一个”id”属性,类似于: <!DOCTYPE html> <html> <head> <title>纯CSS实现酷炫的霓虹灯效…

    css 2023年6月9日
    00
  • 微信小程序如何引用外部js,外部样式,公共页面模板

    微信小程序作为一种新型轻量级应用程序开发框架,拥有着使用方便、内置依赖库齐全、开发效率高等优点。但我们也会遇到需要引用外部js、css、公共页面模板等需求。下面将介绍在微信小程序中如何引用外部js、css以及公共页面模板。 引用外部js 在微信小程序中,我们可以通过<script>标签来引入外部js。如下是一个简单的示例: <view&gt…

    css 2023年6月10日
    00
  • 利用纯css实现table固定列与表头中间横向滚动的思路和实例

    下面我来详细讲解“利用纯CSS实现table固定列与表头中间横向滚动”的思路和实现步骤。 思路 要实现表头和固定列的横向滚动,需要将表格分为三部分:左侧固定列、中间表头、右侧内容。而为了保证左侧固定列的位置不会改变,需要给该列添加固定的宽度。 在滚动时,需要通过对表头和右侧内容的scroll事件进行监听,来同步滚动位置,保证左侧固定列的位置不变。 实现步骤 …

    css 2023年6月10日
    00
  • 基于Ajax+div的“左边菜单、右边内容”页面效果实现

    基于Ajax+div的“左边菜单、右边内容”页面效果实现是一种常见的动态网页设计思路,它的核心是通过异步请求加载内容,避免页面跳转以及资源重复加载,从而提高用户体验。 具体实现流程如下: 准备HTML和CSS结构。通常采用两栏布局,左侧为菜单栏,右侧为内容栏。可以使用CSS实现两栏等高布局,以保持美观。同时为了能够定位内容,需要通过div标签以及唯一的id属…

    css 2023年6月10日
    00
  • 前端必会的Webpack优化技巧

    前端工程化是现代 web 开发不可或缺的一部分。而其中用来打包资源的Webpack更是一个必会的技能。然而在使用Webpack的过程中,为了达到最佳性能,我们还需要通过一些优化技巧来优化Webpack的打包过程。本文将介绍前端必会的Webpack优化技巧全攻略。 一、基础优化 1.1 设置webpack.config.js webpack.config.js…

    css 2023年6月10日
    00
  • 20款覆盖全面的响应式网站设计工具

    20款覆盖全面的响应式网站设计工具攻略 在选择一个好用的响应式网站设计工具时,以下20款工具可能会给你提供参考和帮助。它们都有自己的特点和优点,可以根据需求进行选择。 1. Adobe XD Adobe XD是由Adobe公司推出的一款免费的交互式设计工具。它可以用于设计用户界面、动画和交互式原型。Adobe XD可以轻松地在不同设备和分辨率下设计您的网站。…

    css 2023年6月10日
    00
  • jQuery的animate函数学习记录

    jQuery的animate函数学习记录 本文将详细介绍 jQuery 的 animate 函数的使用方法和注意事项。 简介 animate() 方法是 jQuery 核心库中最常用的方法之一,它通常用于实现页面元素的动态效果。通过使用 animate() 方法,我们可以在一定的时间段内(如1000毫秒)逐步地改变一个元素的属性(如位置、大小、背景色等),从…

    css 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部