菲律宾比索额外降价

Markdown Extra是PHP Markdown的扩展,它实现了一些普通Markdown语法目前不可用的功能。Markdown Extra在中作为单独的解析器类提供PHP标记库

本文档解释了对标记语法由Markdown Extra实现。阅读本文档之前,您应该已经熟悉了原始标记语法文档。


内联HTML

使用Markdown,您可以在文本中间插入HTML。当您需要一些Markdown语法没有提供但HTML很容易实现的功能时,这非常有用。

但当涉及到块元素时,Markdown有一个严重的限制。从标记语法文档中:

块级HTML元素“例如。<div><表格><预><p>, etc.”必须用空行与周围内容隔开,并且块的开始和结束标记不应使用制表符或空格缩进。

这些限制已在额外降价中取消,并被以下限制较少的两项所取代:

  1. 块元素的开始标记不能缩进更多超过三个空格。任何缩进超过此值的标签都将被处理根据标准降价规则作为代码块。

  2. 当在列表中找到块元素时,其所有内容都应该使用与列表项缩进相同的空间缩进。(更多的压痕不会造成任何伤害,只要第一个开口标签不会缩进太多,然后变成代码块-请参阅第一条规则。)

HTML块内的标记

以前在Markdown中,无法将Markdown格式的内容包装在<div>元素。这是因为<div>是一个块元素,普通标记不会格式化此类元素的内容。

Markdown Extra为您提供了一种将Markdown格式的文本放入任何块级标记中的方法。您可以通过添加降价属性的值1-它给出了markdown=“1”-就像这样:

<div markdown=“1”>这是“true”标记文本。</div>

这个markdown=“1”属性将被剥离,并且<div>的内容将从Markdown转换为HTML。最终结果如下:

<div><p>这是真正的标记文本</p>(第页)</div>

Markdown Extra足够聪明,可以根据放置的块元素应用正确的格式降价属性。如果应用降价属性到<p>例如,标记只会在内部生成span级元素,不允许使用列表、块引号和代码块。

但在某些情况下,这是不明确的,例如:

<表格><tr><td markdown=“1”>这是*true*标记文本</td></tr></表格>

表格单元格可以同时包含跨度元素和块元素。在这种情况下,额外降价将仅应用跨度级规则。如果希望启用块构造,只需编写markdown=“块”而不是。

特殊属性

使用Markdown Extra,可以使用属性块设置某些元素的id和class属性。例如,将所需的id前缀放在行末标题后的花括号内,如下所示:

标题1{#header1}========##标题2##{#header2}

然后可以创建指向同一文档不同部分的链接,如下所示:

[链接回页眉1](#header1)

要添加可用作样式表挂钩的类名,请使用如下圆点:

##站点##{.main}

您还可以通过指定属性名称、后跟等号、后跟值(此时不能包含空格)来添加具有简单值的自定义属性:

##Le网站##{lang=fr}

通过将id、多个类名和其他自定义属性全部放入同一个特殊属性块中,可以将它们组合在一起:

##Le Site##{.main.shine#the-Site lang=fr}网站

此时,特殊属性块可以与

对于图像和链接,将特殊属性块紧跟在包含地址的括号之后:

[链接](url){#id.class}![img](url){#id.class}

或者,如果使用参考样式链接和图像,请将其放在定义行的末尾,如下所示:

[link][linkref]或[linkref]![img][linkref][linkref]:url“可选标题”{#id.class}

围栏代码块

Markdown Extra引入了一个没有缩进的语法代码块。带栅栏的代码块与Markdown的常规代码块类似,只是它们没有缩进,而是依靠开始和结束栅栏线来分隔代码块。代码块以包含三个或更多波浪号的行开始~字符,以第一行结尾,波浪号相同~例如:

这是一段介绍:~~~~~~~~~~~~~~~~~~~~~单行代码块~~~~~~~~~~~~~~~~~~~~~

你也可以使用反勾号`以波浪号开头的字符:

``````````````````另一个代码块``````````````````

与缩进的代码块相反,受保护的代码块可以以空行开始和结束:

~~~前空行后面的空行~~~

缩进的代码块不能紧跟在列表之后使用,因为列表缩进优先;受保护的代码块没有这样的限制:

1.列出项目不是缩进代码块,而是第二段在列表项中~~~~这是一个代码块,fenced-style~~~~

如果您需要在没有增加文本块缩进命令的编辑器中粘贴一些代码,例如web浏览器中的文本框,那么隔离代码块也很理想。

您可以指定将应用于代码块的类名。这很有用如果您想根据语言设置不同的代码块样式。或者您还可以使用它来告诉语法高亮显示器要使用什么语法。

~~~~~<p>段落<b>强调</b>~~~~~~~~~~~~~~~~~~~~~~~~~~~~

类名位于第一个围栏的末尾。可以是前面有一个点,但这不是必需的。还可以使用特殊属性块:

~~~~_~~~~ ~~~~+~~~=~~~%~~~~{.html#example-1}<p>段落<b>强调</b>~~~~~~~~~~~~~~~~~~~~~~~~~~~~

在HTML输出中,代码块属性将应用于代码元素;如果你想在元素,设置配置变量代码_属性_预处理在解析器上真的。请参阅配置有关更多详细信息,请参阅。

桌子

Markdown Extra有自己的简单表语法。“简单”表如下所示:

第一个页眉|第二个页眉------------- | -------------内容单元格|内容单元格内容单元格|内容单元格

第一行包含列标题;第二行包含标题和内容之间的强制分隔线;下一行是表中的一行。柱始终由管道分隔(|)字符。转换为HTML后,结果如下:

<表格><头部><tr>第一个标题第二个标题</tr></thead><t车身><tr><td>内容单元格</td><td>内容单元格</td></tr><tr><td>内容单元格</td><td>内容单元格</td></tr></tbody></表格>

如果您愿意,可以在表格的每一行中添加一个前导管和尾管。使用你喜欢的表格。作为一个例子,这将得到与上面相同的结果:

|第一个页眉|第二个页眉|| ------------- | ------------- ||内容单元格|内容单元格||内容单元格|内容单元格|

注:桌子需要至少每行上有一个管道供Markdown Extra正确解析。这意味着,创建一个单列表的唯一方法是在每一行中添加一个前导或尾部管道,或者同时添加这两个管道。

您可以通过向分隔线添加冒号来指定每列的对齐方式。分隔线左侧的冒号将使列左对齐;行右侧的冒号将使列右对齐;两侧的冒号表示列居中对齐。

|项目|值|| --------- | -----:||电脑|$1600||电话|$12||管道|1|

这个排列HTML属性应用于相关列的每个单元格。

您可以使用常规Markdown语法将跨度级格式应用于每个单元格的内容:

|函数名|说明|| ------------- | ------------------------------ ||`help()`|显示帮助窗口||`destroy()`|**销毁您的计算机!**|

定义列表

额外降价实现定义列表。定义列表由术语和这些术语的定义组成,很像字典中的定义。

Markdown Extra中的简单定义列表由一个单行术语组成,后跟一个冒号和该术语的定义。

苹果:苹果属植物的果皮蔷薇科。橙色:柑橘属常青树的果实。

术语必须与之前的定义用空行隔开。定义可以跨越多行,在这种情况下,它们应该缩进。但实际上您不必这样做:如果您想偷懒,可以忘记缩进跨越多行的定义,这样仍然可以工作:

苹果:苹果属植物的果皮蔷薇科。橙色:柑橘属常青树的果实。

上述每个定义列表将给出相同的HTML结果:

<dl>苹果公司<dd>苹果属植物的果皮蔷薇科</添加><dt>橙色柑橘属常青树的果实</日期></dl>

作为定义标记的冒号通常从左边距开始,但最多可以缩进三个空格。定义标记后面必须跟一个或多个空格或制表符。

定义列表可以有多个与一个术语关联的定义:

苹果:苹果属植物的果皮蔷薇科。:一家美国电脑公司。橙色:柑橘属常青树的果实。

您还可以将多个术语与定义关联:

第1学期第2学期:定义a第三学期:定义b

如果定义前面有一个空行,Markdown Extra将在<p>HTML输出中的标记。例如:

苹果:苹果属植物的果皮蔷薇科。橙色:柑橘属常青树的果实。

会变成这样:

<dl>苹果公司<日><p>苹果属植物的角果蔷薇科</p>(第页)</dd><dt>橙色<日><p>柑橘属常青树的果实</p>(第页)</dd></dl>

就像常规列表项一样,定义可以包含多个段落,并包括其他块级元素,如块引号、代码块、列表,甚至其他定义列表。

第1学期:这是一个有两段的定义。乱数假文哀悼坐在阿米特,奉献给爱慕的精英。Aliquam公司hendrerit mi posuere选择。前厅enim wisi,viverra nec,fringilla in,老挝维塔,瑞斯。:术语1的第二个定义,也包含在段落中因为前面有一行空白。第2学期:此定义有代码块、块引号和列表。代码块。>大宗报价>在两条线上。1.第一个列表项2.第二个列表项

脚注

脚注的作用主要类似于参考样式链接。脚注由两部分组成:文本中的标记将成为上标数字;脚注定义,将放在文档末尾的脚注列表中。脚注如下所示:

那是一些带有脚注的文字。[^1][^1]:这是脚注。

脚注定义可以在文档中的任何位置找到,但脚注将始终按其在文本中链接的顺序列出。

每个脚注必须有一个不同的名称。该名称将用于将脚注引用链接到脚注定义,但对脚注的编号没有影响。名称可以包含身份证件属性。

脚注可以包含块级元素,这意味着您可以在脚注中放置多个段落、列表、块引号等。它的工作原理与列表项相同:只需在脚注定义中将以下段落缩进四个空格:

那是一些带有脚注的文字。[^1][^1]:这是脚注。这是第二段。

如果你想把东西对齐得更好,你可以把脚注的第一行留空,把你的第一段放在下面:

[^1]:这就是脚注。这是第二段。

输出

一个脚注标记并不能满足所有人的要求,这可能是真的。未来的版本可能会提供编程接口,以允许生成不同的标记。但今天,输出如下在《勇敢的火球》上可以看到什么,略有修改。以下是上面第一个示例的默认输出:

<p>那是一些带有脚注的文字。<sup id=“fnref:1”><a href=“#fn:1”class=“footnote-ref”role=“doc-noteref”>1</p><div class=“脚注”role=“文档尾注”><小时/><ol><li id=“fn:1”role=“doc-endnote”><p>这就是脚注。<a href=“#fnref:1”class=“footnote-backref”role=“doc-backlink”>&#8617</a></p></li></ol></div>

有点神秘,但在浏览器中会显示如下:

那是一些带有脚注的文字。1


  1. 这就是脚注。

这个class=“footnote-ref”class=“footnote-backref”>链接上的属性表示它们与链接到的元素之间的关系。它们可以用于使用CSS规则对元素进行样式设置,例如:

a.footnote-ref{…}a.footnote-backref{…}

这个角色属性使脚注标记可以被辅助工具理解。请参见WAI-ARIA公司用于角色定义。

您可以自定义标题脚注链接和反向链接的属性。请参阅配置有关更多详细信息,请参阅。

缩写

额外标记添加了对缩写的支持(HTML标记<阿伯>). 它的工作原理很简单:创建一个缩写定义,如下所示:

*[HTML]:超文本标记语言*[W3C]:万维网联盟

然后,在文档的其他地方写下如下文本:

HTML规范由W3C维护。

文本中这些单词的任何实例都将变成:

HTML规范由W3C维护。

缩写是区分大小写的,如果这样定义的话,缩写会跨越多个单词。缩写词也可能有空定义,在这种情况下<阿伯>标签将添加到文本中,但标题属性将被省略。

“老虎起源”行动进展顺利。*【Tigra Genesis】:

缩写定义可以在文档中的任何位置。它们被从最终文件中删除。

有序列表

如果有序列表以不同于1的数字开头,“额外标记”将在HTML输出中遵循这一点。

强调

强调规则与最初的Markdown语法略有不同。使用额外标记,单词中间的下划线现在被视为文字字符。下划线强调仅适用于整个单词。如果只需要强调单词的某些部分,仍然可以使用星号作为强调标记。

例如:

请打开文件夹“secret_magic_box”。

额外标记不会将下划线转换为强调,因为它们位于单词的中间。Markdown Extra的HTML结果如下所示:

<p>请打开文件夹“secret_magic_box”</p>(第页)

只要你像这样强调整个单词,用下划线强调仍然有效:

我喜欢你说你爱我。

这同样适用于强强调:使用额外标记,您不能再使用下划线在单词中间设置强强调,必须使用星号作为强调标记。

反斜杠转义

额外标记添加冒号(:)和管道(|)到字符列表中,可以使用反斜杠进行转义。这样可以防止它们触发定义列表或表。


谢谢

这里实现的许多想法以前在降价讨论列表。我想感谢所有参与这些讨论并起草了Markdown语法的解决方案和改进方案的人。


  • ©2003–2024 Michel Fortin版权所有。