如何链接到Markdown中同一文档的一部分?
我正在写一个大型的Markdown文档,并希望在开始处放置一个目录表,以便提供指向文档中各个位置的链接。 我怎样才能做到这一点?
我试过使用
[a link](# MyTitle)
MyTitle
是文档中的标题,这不起作用。
在pandoc中,如果使用选项--toc
生成html,则会生成一个目录表,其中包含指向部分的链接,并返回到部分标题中的目录。 它与其他格式的pandoc写法类似,如LaTeX,rtf,rst等等,所以使用该命令
pandoc --toc happiness.txt -o happiness.html
这一点markdown:
% True Happiness
Introduction
------------
Many have posed the question of true happiness. In this blog post we propose to
solve it.
First Attempts
--------------
The earliest attempts at attaining true happiness of course aimed at pleasure.
Soon, though, the downside of pleasure was revealed.
将产生这个作为HTML的主体:
<h1 class="title">
True Happiness
</h1>
<div id="TOC">
<ul>
<li>
<a href="#introduction">Introduction</a>
</li>
<li>
<a href="#first-attempts">First Attempts</a>
</li>
</ul>
</div>
<div id="introduction">
<h2>
<a href="#TOC">Introduction</a>
</h2>
<p>
Many have posed the question of true happiness. In this blog post we propose to solve it.
</p>
</div>
<div id="first-attempts">
<h2>
<a href="#TOC">First Attempts</a>
</h2>
<p>
The earliest attempts at attaining true happiness of course aimed at pleasure. Soon, though, the downside of pleasure was revealed.
</p>
</div>
Github会自动解析标头外的锚标签。 所以你可以做到以下几点:
[Foo](#foo)
# Foo
在上面的例子中, Foo
头部生成了一个名称为foo
的锚标签
注意 :对于所有标题大小,只有一个#
, #
和锚点名称之间没有空格,锚点标记名称必须小写,如果是多字,则使用破折号分隔。
[click on this link](#my-multi-word-header)
### My Multi Word Header
更新
与pandoc
开箱即用。
在实验中,我找到了一个使用<div…/>
的解决方案,但一个明显的解决方案是将自己的锚点放置在任何你喜欢的页面中,因此:
<a name="abcde">
之前和之后
</a>
在你想要'链接'的行之后。 然后是一个降价链接,如:
[link text](#abcde)
文档中的任何位置都可以带您到达。
<div…/>
解决方案插入一个“虚拟”部分来添加id
属性,这可能会破坏页面结构,但<a name="abcde"/>
解决方案应该是相当无害的。
(PS:将锚点放在你想链接的行中可能是可以的,如下所示:
## <a name="head1">Heading One</a>
但这取决于Markdown如何对待这一点。 我注意到,例如,Stack Overflow答案格式化师对此很满意!)
链接地址: http://www.djcxy.com/p/88971.html