我们用 Markdown 语法写文章,会用 Markdown 标题语法 # 写标题,就比如这篇文章里就有很多标题。
我们知道,书的开头都会有一个目录,那么可不可以基于这些标题,在文章开头做一个目录呢?
可以,必须可以!
制作目录也很简单,只需要针对文章中每个标题,在页面开头写一行目录即可。
比如,文章中的标题语法是:
# 标题
那么对应的目录行语法是:
[标题](#标题)
依次类推,文章中有多少个标题,在文章开头就有多少行对应的目录
不过,需要注意的是,[](#)中[]和()里的内容是有区别的
[]里的内容,只需要把标题原封不动的复制过来就好,但()里的内容要对一些特殊的字符做「删掉」或「加-」的处理。
如果标题里有空格,()里的标题就需要把「空格」替换成「-」
如下所示
#我 很 好
[我 很 好](#我-很-好)
如何标题里有符号,()里的标题就需要把「符号」直接删掉
如下所示
# 我&你
[我&你](#我你)
好了,关于如何制作目录应该讲的足够清楚了~
为了防止你还没看明白,最后再给个例子
\# 中国的城市
上海、北京...
\# 美国的城市 & 英国的城市
洛杉矶、纽约、伦敦...
对应的目录
\[中国的城市](#中国的城市)
\[美国的城市 & 英国的城市](#美国的城市--英国的城市)
好了,要是还看不懂......那就看不懂把......
上面这样制作目录的方法比较复杂,每一行标题都要按照特定的语法写一行对应的目录行,有没有更简单、更快速的方法呢?
有,必须有!
Markdown 有专门的语法,支持在文章开头,基于文章中用 # 写的标题,自动生成一个目录。
这个语法就是 [TOC],只需要在文章开头的位置写上 [TOC],就可以了。
Markdown 会自动根据文章中 # 号标识的标题,生成一个有序、有层级的目录。
其中有序指的是,目录的顺序对应的文章中标题的顺序。
有层级指的是,不同数量 # 标识的不同层级的标题,Markdown 语法会自动缩进。
用 [TOC] 生成目录是不是简单多了,很香是不是。
但是!
很可惜的是!
GitHub不支持 [TOC] 自动生成目录!
但是没关系!
有人已经造好了生成目录的工具:GitHub目录自动生成工具