项目

属性扩展(Markdig 规范文档)

本节描述了支持的不同扩展:

通用属性

属性可以附加到:

  • 如果前一个元素不是文字,则附加到前一个行内元素
  • 如果当前块是段落,并且属性是段落中唯一的内联元素,则附加到下一个块
  • 或者当前块

属性可以有三种类型:

  • ID 元素,以 # 开头,用于设置 HTML 元素的 id 属性
  • 类元素,以 . 开头,将追加到 HTML 元素的 CSS 类属性
  • name=valuename="value",将作为 HTML 元素的属性追加

以下示例说明属性附加到当前块或前一个行内元素:

# This is a heading with an an attribute{#heading-link}

# This is a heading # {#heading-link2}

[This is a link](http://google.com){#a-link .myclass data-lang=fr data-value="This is a value"}

This is a heading{#heading-link2}
-----------------

This is a paragraph with an attached attributes {#myparagraph attached-bool-property attached-bool-property2}
.
<h1 id="heading-link">This is a heading with an an attribute</h1>
<h1 id="heading-link2">This is a heading</h1>
<p><a href="http://google.com" id="a-link" class="myclass" data-lang="fr" data-value="This is a value">This is a link</a></p>
<h2 id="heading-link2">This is a heading</h2>
<p id="myparagraph" attached-bool-property="" attached-bool-property2="">This is a paragraph with an attached attributes </p>

以下示例说明属性可以附加到紧随其后的块,如果它们位于单独一行中,且在块之前(或前面是空行或块容器的开始):

{#fenced-id .fenced-class}
~~~
This is a fenced with attached attributes
~~~
.
<pre><code id="fenced-id" class="fenced-class">This is a fenced with attached attributes
</code></pre>

属性值可以是一个字符长

[Foo](url){data-x=1}

[Foo](url){data-x='1'}

[Foo](url){data-x=11}
.
<p>[Foo](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/url)</p>
<p>[Foo](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/url)</p>
<p>[Foo](/docs/zh-Hans/net-lib-docs/master/Markdig/Specs/url)</p>

以上代码展示了属性值可以是单个字符的情况。

在本文档中