在Markdown中从0开始排序列表

时间:2013-02-25 23:16:39

标签: html-lists markdown

我是 Markdown 的新手。我写的是:

#Table of Contents  
0. Item 0  
1. Item 1  
2. Item 2

但这会产生:

目录

  1. 第0项
  2. 第1项
  3. 第2项
  4. 是的,我想从零开始列表。有一个简单的方法吗?

    如果没有,我可以简单地重命名我的所有索引,但是当我有几个项目时这很烦人。我不认为我会遇到这个问题,从零开始列表看起来很自然,比如从零开始一个数组的索引。

4 个答案:

答案 0 :(得分:30)

简单地说:

更长:是,但

在Markdown中创建有序列表时,它会被解析为HTML有序列表,即:

# Table of Contents

0. Item 0  
1. Item 1  
2. Item 2

将创建:

<h1>Table of Contents</h1>
<ol>
  <li>Item 0</li>
  <li>Item 1</li>
  <li>Item 2</li>
</ol>

正如您所看到的,没有关于起始号码的数据。如果你想以某个数字开头,不幸的是,你必须使用纯HTML并写:

<ol start="0">
  <li>Item 0</li>
  <li>Item 1</li>
  <li>Item 2</li>
</ol>

答案 1 :(得分:5)

您可以使用HTML 开始标记:

<ol start="0">
  <li> item 1</li>
  <li> item 2</li>
  <li> item 3</li>
</ol>

目前所有浏览器都支持它:Internet Explorer 5.5 +,Firefox 1 +,Safari 1.3 +,Opera 9.2 +,Chrome 2 +

您可以选择使用类型标签进行更复杂的枚举:

  • type="1" - 十进制(默认样式)
  • type="a" - lower-alpha
  • type="A" - upper-alpha
  • type="i" - lower-roman
  • type="I" - upper-roman

答案 2 :(得分:1)

通过html:使用<ol start="0">

通过CSS:

ol {
    counter-reset: num -1; // reset counter to -1 (any var name is possible)
}
ol li {
    list-style-type: none; // remove default numbers
}
ol li:before {
    counter-increment: num; // increment counter
    content: counter(num) ". "; 
}

FIDDLE

答案 3 :(得分:1)

更新:取决于实施。

当前版本的CommonMark需要start属性。一些实现已经支持这一点,例如pandoc和markdown-it。有关详细信息,请参阅babelmark