HTML5语义化编程

常见的 HTML5 语义化标签

  • <header>:定义文档或节的头部区域,通常包含标题、logo、导航链接等。
  • <nav>:表示导航链接的部分,适合用来包裹主要的导航菜单。
  • <main> :标识文档的主要内容,每个页面应该只有一个 <main> 元素,且不应包含在其他元素(如 <article>, <aside>, <footer>, <header>, 或 <nav>)内。
  • <article>:代表一个独立的内容块,比如博客文章、新闻故事或用户评论。
  • <section>:定义文档中的一个部分或章节,通常会有一个标题。它用于组织内容,但不应该用作样式钩子或布局工具。
  • <aside>:包含与页面内容相关但不是主要内容的信息,例如侧边栏或注释。
  • <footer>:定义文档或节的尾部区域,通常放置版权信息、联系方式等。
  • <figure><figcaption><figure> 用于包裹图像、图表、代码片段等内容,而 <figcaption> 则用于为 <figure> 提供标题或说明文字。
  • <time> :表示日期或时间,可以使用 datetime 属性来指定机器可读的格式。
  • <mark>:高亮显示文本,常用于标记文档中需要引起注意的部分。
  • <details><summary><details> 定义用户可以查看或隐藏的额外细节,而 <summary> 定义了 <details> 的标题。
  • <dialog>:表示对话框或窗口,可以通过 JavaScript 控制其显示和隐藏。
  • <progress><meter>:分别用于表示进度条和度量值,适用于展示任务完成情况或数值范围。

语义化示例

以下是一个简单的 HTML5 页面结构,展示了如何使用语义化标签:

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
  <title>我的博客</title>
</head>
<body>
  <header>
    <h1>我的个人博客</h1>
    <nav>
      <ul>
        <li><a href="#home">首页</a></li>
        <li><a href="#about">关于我</a></li>
        <li><a href="#contact">联系我</a></li>
      </ul>
    </nav>
  </header>

  <main>
    <article>
      <header>
        <h2>最新文章标题</h2>
        <p>发布于 <time datetime="2025-01-06">2025年1月6日</time></p>
      </header>
      <p>这是文章的内容...</p>
      <figure>
        <img src="image.jpg" alt="图片描述">
        <figcaption>这张图是关于...</figcaption>
      </figure>
    </article>

    <aside>
      <h3>热门文章</h3>
      <ul>
        <li><a href="#">文章一</a></li>
        <li><a href="#">文章二</a></li>
        <li><a href="#">文章三</a></li>
      </ul>
    </aside>
  </main>

  <footer>
    <p>&copy; 2025 我的博客. 保留所有权利.</p>
  </footer>
</body>
</html>
相关推荐
time_silence几秒前
CSS:背景样式、盒子模型与文本样式
前端·css
从后端到QT8 分钟前
Android NDK开发入门2之适应idm环境
前端·javascript·数据库
一念永恒@27 分钟前
vue2新增删除
前端·javascript·vue.js
岸边的风1 小时前
vue中mixin的理解,有那些使用场景?
前端·javascript·vue.js
时间sk1 小时前
CSS——6. 导入样式
前端·css
玩具工匠1 小时前
字玩FontPlayer开发笔记9 Tauri2打包应用
前端·笔记
骆驼Lara1 小时前
Vue3.5 企业级管理系统实战(一):项目初始搭建与配置
前端·vue.js
黑云压城After1 小时前
uniapp web-view调整修改高度设置
前端·javascript·uni-app
问老大1 小时前
uniapp实现在card卡片组件内为图片添加长按保存、识别二维码等功能
前端·javascript·uni-app
她说她一如既往的爱我2 小时前
如何写一个uniapp自定义tarbar导航栏?
前端·vue.js·windows·uni-app