页内跳转
之前学习总结过 Markdown 的语法,但是在 CSDN 上用 Markdown 写博客无法实现页内跳转,一直没有找到很好的解决方法,今天偶然在网上发现新的关于页内跳转的解决方法
使用HTML标签
因为 Markdown 可以嵌入 HTML 标签,所以最初我想到的是利用 HTML 的锚点标签 <a> 实现页内跳转。W3School 中给出了业内跳转的示例:链接到同一个页面的不同位置
使用方法如下:
- 
在 A处设置锚点,定义锚点的名称<a name="锚点名称">A</a>
- 
在 B处设置锚点,定义链接指向的页内锚点<a href="#锚点名称">B</a>
不过在 CSDN 博客中,这种方式没有起作用
使用 id 属性
后来又找到一种方法,是使用 id 属性替换 name 属性,这次可以跳转了,不过每次跳转操作都会打开一个新的页面
属性target
很偶然的情况下,发现添加属性 target 可能会有用,就是在跳转锚点的时候添加属性 target="_self"。在 W3School 上找到了相应的解释:HTML  标签的 target 属性
<a>标签的target属性规定在何处打开链接文档。
_self这个目标的值对所有没有指定目标的
<a>标签是默认目标,它使得目标文档载入并显示在相同的框架或者窗口中作为源文档。这个目标是多余且不必要的,除非和文档标题<base>标签中的target属性一起使用。
生成目录
在网上还找到一种方法,就是生成目录语法,实现方式如下
- 
在 A处设置目录<h1 id="1">标题1</h1> <h1 id="2">标题2</h1> // 或 ## 标题1 。。。 ## 标题2
- 
在 B处设置跳转目录
注意1:标题名不能有中英文混杂,会造成跳转功能失效
注意2:sphinx对于目录跳转语法失效