Markdown 生成目录

Markdown 生成目录

1. 前言

目录是文章内容的整体索引,是文章结构的最直观表现形式。

Markdown 为生成目录提供了快捷方式,大大降低了文章目录的编排复杂度。

环境说明
考虑到 Markdown 工具之间的不兼容,有的内容直接从页面复制粘贴到本地不会正常显示,大家学习时自己动手写是肯定没问题的。本节所有实例代码及演示效果均使用 Typora 工具完成。
「TOC」是 Markdown 扩展语法,Typora 默认已支持该扩展。

2. 语法详解

2.1 目录的自动生成

在 Markdown 中,自动生成目录非常简单,只需要在恰当的位置添加 [TOC] 符号,凡是以 # 定义的标题都会被编排到目录中。

实例 1

使用 [TOC] 生成文档目录导航。

[TOC]# 一级标题一些内容。。。。## 二级标题一些内容。。。。### 三级标题一些内容。。。。

渲染效果如下:

图片描述

其 Html 内容如下:

<div class=md-toc mdtype=toc><p class=md-toc-content role=list><span role=listitem class=md-toc-item md-toc-h1 data-ref=n2>  <a class=md-toc-inner href=#一级标题>一级标题</a></span><span role=listitem class=md-toc-item md-toc-h2 data-ref=n3>  <a class=md-toc-inner href=#二级标题>二级标题</a></span><span role=listitem class=md-toc-item md-toc-h3 data-ref=n4>  <a class=md-toc-inner href=#三级标题>三级标题</a></span>
  </p></div>

2.2 手动书写目录

尽管自动生成目录非常方便,我们也难免有自定义目录的需求,如只显示一二级大标题等。

手动添加目录的方法就是将「列表」和「页内超链接」相结合。

实例 2

用列表和链接做出目录效果。

- [一级标题](#一级标题)
  - [标题 1-1](#二级标题 1-1)  - [标题 1-2](#二级标题 1-2)- [二级标题](#二级标题)
  - [标题 2-1](#二级标题 2-1)  - [标题 2-2](#二级标题 2-2)- [一级标题](#一级标题)
  - [标题 1-1](#二级标题 1-1)  - [标题 1-2](#二级标题 1-2)- [二级标题](#二级标题)
  - [标题 2-1](#二级标题 2-1)  - [标题 2-2](#二级标题 2-2)# 一级标题一些内容……## 二级标题 1-1一些内容……## 二级标题 1-2一些内容……# 二级标题一些内容……## 二级标题 2-1一些内容……## 二级标题 2-2一些内容……

其渲染效果如下:

图片描述

3. 使用场景

目录适用于有章节标题的文章,通常用于跳转,所以适合在网页或 PDF 文件中使用。

4. 小结

  • Markdown 支持自动使用 [toc] 标记生成目录;

  • 当自动生成的目录无法满足需求时,我们仍可通过「页内超链接」的形式定义目录;

  • 由于 Markdown 没有分页的概念,所以目录中无法自动页码。