项目

自动标识符扩展(Markdig 规范文档)

本节描述了自动标识符扩展

标题自动标识符

允许为标题自动生成标识符:

# 这是一个标题
.
<h1 id="this-is-a-heading">这是一个标题</h1>

仅保留标点符号 -, _.,其他非字母字符都将被丢弃。 连续的相同字符 -, _. 被渲染为一个字符 字符串末尾的 -, _. 也会被丢弃。

# This - is a &@! heading _ with . and ! -
.
<h1 id="this-is-a-heading_with.and">This - is a &amp;@! heading _ with . and ! -</h1>

格式化(强调)也会被丢弃:

# This is a *heading*
.
<h1 id="this-is-a-heading">This is a <em>heading</em></h1>

链接也会被移除:

# This is a [heading](/url)
.
<h1 id="this-is-a-heading">This is a [heading](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs//url)</h1>

如果有多个标题具有相同的文本,-1, -2...-n 将作为标题 id 的后缀。

# This is a heading
# This is a heading
.
<h1 id="this-is-a-heading">This is a heading</h1>
<h1 id="this-is-a-heading-1">This is a heading</h1>

标题 id 将从标题的第一个字母字符开始,所有之前的字符都将被丢弃:

# 1.0 This is a heading
.
<h1 id="this-is-a-heading">1.0 This is a heading</h1>

如果标题在上述规则下全部被剥离,将使用 section 作为 id:

# 1.0 & ^ % *
# 1.0 & ^ % *
.
<h1 id="section">1.0 &amp; ^ % *</h1>
<h1 id="section-1">1.0 &amp; ^ % *</h1>

当设置选项 "AutoLink" 时,可以使用与标题完全相同的标签文本链接到现有的标题:

# This is a heading
[This is a heading]
.
<h1 id="this-is-a-heading">This is a heading</h1>
<p>[This is a heading](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/#this-is-a-heading)</p>

标题前面的链接也有效:

[This is a heading]
# This is a heading
.
<p>[This is a heading](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/#this-is-a-heading)</p>
<h1 id="this-is-a-heading">This is a heading</h1>

链接文本可以更改:

[With a new text][This is a heading]
# This is a heading
.
<p>[With a new text](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/#this-is-a-heading)</p>
<h1 id="this-is-a-heading">This is a heading</h1>

自动生成的标识符不应与现有的链接冲突:

![scenario image][scenario]
## Scenario
[scenario]: ./scenario.png
.
<p># 自动标识符扩展(Markdig 规范文档)

本节描述了自动标识符扩展

## 标题自动标识符

允许为标题自动生成标识符:

```example
# 这是一个标题
.
<h1 id="this-is-a-heading">这是一个标题</h1>

仅保留标点符号 -, _.,其他非字母字符都将被丢弃。 连续的相同字符 -, _. 被渲染为一个字符 字符串末尾的 -, _. 也会被丢弃。

# This - is a &@! heading _ with . and ! -
.
<h1 id="this-is-a-heading_with.and">This - is a &amp;@! heading _ with . and ! -</h1>

格式化(强调)也会被丢弃:

# This is a *heading*
.
<h1 id="this-is-a-heading">This is a <em>heading</em></h1>

链接也会被移除:

# This is a [heading](/url)
.
<h1 id="this-is-a-heading">This is a [heading](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs//url)</h1>

如果有多个标题具有相同的文本,-1, -2...-n 将作为标题 id 的后缀。

# This is a heading
# This is a heading
.
<h1 id="this-is-a-heading">This is a heading</h1>
<h1 id="this-is-a-heading-1">This is a heading</h1>

标题 id 将从标题的第一个字母字符开始,所有之前的字符都将被丢弃:

# 1.0 This is a heading
.
<h1 id="this-is-a-heading">1.0 This is a heading</h1>

如果标题在上述规则下全部被剥离,将使用 section 作为 id:

# 1.0 & ^ % *
# 1.0 & ^ % *
.
<h1 id="section">1.0 &amp; ^ % *</h1>
<h1 id="section-1">1.0 &amp; ^ % *</h1>

当设置选项 "AutoLink" 时,可以使用与标题完全相同的标签文本链接到现有的标题:

# This is a heading
[This is a heading]
.
<h1 id="this-is-a-heading">This is a heading</h1>
<p>[This is a heading](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/#this-is-a-heading)</p>

标题前面的链接也有效:

[This is a heading]
# This is a heading
.
<p>[This is a heading](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/#this-is-a-heading)</p>
<h1 id="this-is-a-heading">This is a heading</h1>

链接文本可以更改:

[With a new text][This is a heading]
# This is a heading
.
<p>[With a new text](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/#this-is-a-heading)</p>
<h1 id="this-is-a-heading">This is a heading</h1>

自动生成的标识符不应与现有的链接冲突:

![scenario image][scenario]
## Scenario
[scenario]: ./scenario.png
.
<p><img src="./scenario.png" alt="scenario image" /></p>
<h2 id="scenario">Scenario</h2>
在本文档中