前言#
一般的 HTML 锚点都是通过 url 中的 hash 来让浏览器知道要滚动到哪个元素。这里说的 hash 就是 location.hash 可以简单理解为 url 中 # 后面的内容。如果我们的页面中有元素的 id 和 hash 相同,并且它处在一个可滚动的容器中,那么浏览器会在页面加载的时候直接滚动到该元素。
这个功能很有用,通常是用在一个很长的页面中的目录上,比如我们经常看到的 HTML,CSS,ECMAScript 等标准一般都会给目录加上锚点,方便我们直接跳转到对应内容,否则靠滚动的话太不方便。markdown 自然也有需要锚点的场景,不过不同的 markdown 实现可能不相同,今天我在整理书单的时候想把书单也同步到 Github 上,README.md 中就需要用到锚点,这里说一下 Github 的锚点使用。
锚点使用#
标题的锚点链接#
在 markdown 中我们使用一个或多个 # 来创建段落标题,在 Github 上显示的 markdown 的标题默认会加上与标题名称相同的锚点标记也就是 id。所以我们可以使用如下方法来使用锚点。
[标题1](#标题1)
[标题2](#标题2)
[标题3](#标题3)
# 标题1
## 标题2
## 标题3markdown需要注意的是,我们经常使用中文标题,中文标题的锚点会进行
url的编码操作,url编码细节可以看这篇文章 ↗
锚点名称小写#
[Github标题1](#github标题1)
## Github标题1markdown空格用 - 代替#
[Github 标题2 Test](#github-标题2-test)
## Github 标题2 Testmarkdown