use*_*174 8 markdown r-markdown
有没有办法在普通Markdown中显示反向排序列表?
我读到了HTML"反向"选项(如何在HTML中显示反向排序列表?,http://www.w3schools.com/tags/tryit.asp ? filesname = tryhtml5_ol_reversed)但是如果有的话,我会赞成使用Markdown解决方案存在.
澄清一下,有没有办法写出类似的东西:
0. Coffee
0. Tea
0. Milk
Run Code Online (Sandbox Code Playgroud)
并将其呈现为
3咖啡
2茶
1牛奶
而不是常规
1咖啡
2茶
3牛奶
我不知道一个简单的Markdown解决方案,但对于那些愿意考虑相当常见的降价扩展的人,你可以使用kramdown实现这一点.在Kramdown中,您可以向任何HTML块添加任何属性.所以,你需要做的就是:
0. first item
0. second item
0. another item
{: reversed="reversed"}
Run Code Online (Sandbox Code Playgroud)
这会将reversed
属性添加到您的<ol>
块中,并将生成所需的效果.
有关语法,请参阅kramdown文档.
该文档的状态(部分):
重要的是要注意,用于标记列表的实际数字对Markdown产生的HTML输出没有影响。... [为简洁明了而排除的示例] ...
关键是,如果需要,可以在已订购的Markdown列表中使用序数,以便源中的数字与已发布的HTML中的数字匹配。但是,如果您想变得懒惰,就不必这样做。
但是,如果您确实使用惰性列表编号,则仍应以数字1开头列表。在将来的某个时候,Markdown可能支持以任意数字开头的有序列表。
实际上,一些实现已经开始支持start属性(一个示例)。但是,这种情况很少见。即使这样,也仅引用第一项的编号。其余项目的编号仍然被忽略。
我不知道任何支持该reverse
属性的实现。此外,解析器将如何检测到它?解析器是否需要检查所有数字?还是只是前两个?
由于HTML确实没有提供手动定义每个列表项编号的方法,因此Markdown解析器没有理由关心为每个单独的项分配哪些编号。因此,大多数(全部?)都不是。
当然,Markdown确实支持原始HTML。如语法规则所述:
对于Markdown语法未涵盖的任何标记,您只需使用HTML本身。
因此,您可以在Markdown文档中的原始HTML中手动定义列表:
A paragraph of Markdown text
<ol reversed>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ol>
More Markdown text.
Run Code Online (Sandbox Code Playgroud)
为何这样做是正确的方法背后的哲学是这样解释的:
Markdown不能替代HTML,甚至不能替代HTML。它的语法非常小,仅对应于很小的HTML标签子集。这个想法不是要创建一种使插入HTML标签更加容易的语法。我认为HTML标记已经很容易插入。
归档时间: |
|
查看次数: |
1712 次 |
最近记录: |