基础有序列表
有时候,我们需要给列表中的项目编号。本能会告诉你在每个项目前加上一个数字,就像下面这个列表一样:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base-num]
上述方法是可行的,但由于编号是显而易见的,如果你省略了编号,AsciiDoc处理器会为你自动插入这些编号。
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base]
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base]
如果你明确编号有序列表,你必须手动保持列表数字的顺序。否则,你将收到一个警告。这与其他轻量级标记语言不同。但这样做是有原因的。
使用显式编号是调整列表编号偏移的一种方式。例如,您可以输入:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base-num-start]
然而,有一种更简单的方法可以达到相同的结果而无需手动劳动。您可以在列表上使用`start`属性来定义您希望数字开始的编号。
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base-start]
起始值始终是一个正整数值,即使使用不同的编号风格,例如小写字母编号。
要以相反的顺序显示列表项目,请添加 reversed
选项:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=reversed]
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=reversed]
你可以通过在行首加上一个点,紧接着写上文本(点后不留空格)来给列表加一个标题。
这是一个带标题的列表示例:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base-t]
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=base-t]
嵌套有序列表
你通过在每个项目前面使用一个或多个点来创建嵌套项目。
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=nest]
AsciiDoc为每个嵌套级别选择不同的编号方案。以下是前一个列表的呈现方式:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=nest]
Tip
|
就像无序列表中的星号一样,有序列表中的点的数量并不代表嵌套的层级。然而,遵循点的数量等于嵌套层级的约定会更加直观。 点的数量等于嵌套的层级 再次强调,我们的目标是让纯文本标记即便是以原样阅读也具有可读性。 |
这是一个在有序列表内嵌套无序列表的例子:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=mix]
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=mix]
你可以展开条目并缩进嵌套列表,如果这样对你来说更易读的话:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=mix-alt]
描述列表页面演示了如何结合所有三种列表类型。
数字样式
对于有序列表,AsciiDoc支持诸如lowergreek和decimal-leading-zero等编号样式。可以应用于有序列表的编号样式完整列表如下:
块式布局 | CSS列表样式类型 |
---|---|
arabic |
十进制 |
decimal [1] |
前导零十进制 |
loweralpha |
小写字母 |
upperalpha |
大写字母 |
lowerroman |
小写罗马数字 |
upperroman |
大写罗马数字 |
lowergreek [1] |
小写希腊字母 |
[1] 这些样式只被HTML转换器支持。
以下是几个示例,显示了由表头行中的块样式定义的各种编号风格:
[阿拉伯数字] [2] | [十进制] | [小写字母] | [小写希腊字母] |
---|---|---|---|
|
|
[loweralpha] . 一 . 两 . 三个a |
[lowergreek] . 一 . 两 . 三 |
如果未指定块样式,则默认数字编号为2.
Tip
|
自定义编号样式可以通过自定义角色实现。在样式表中定义一个新的类选择器(例如,.custom ),将 list-style-type 属性设置为你选择的值。然后,将该类的名称作为角色分配给任何你想应用该编号的列表。
|
当在有序列表上使用角色缩写(.custom
)时,编号样式不再被省略。
您可以通过设置其样式(块属性列表中的第一个位置条目)来覆盖任何级别的编号方案。您还可以使用 start
属性来设置起始编号:
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=num]
Unresolved directive in ordered.adoc - include::example$ordered.adoc[tag=num]
Important
|
"`start` 属性必须是一个数字,即使在使用不同的编号样式时也是如此。例如,要从字母“c”开始一个字母列表,将编号样式设置为 loweralpha 并将 start 属性设置为 3。" |
逃离列表标记
如果你有一个段落文本以列表标记开始,但你不希望它成为列表项,你需要使用属性引用来逃避该标记以打破模式。
考虑到这样一种情况:行首是一个邮政信箱(P.O. box)的引用:
邮政信箱
为了防止这段文字被解析为一个有序列表,你需要将第一个空格替换为 {empty}
。
邮政信箱
现在这个段落将保持为一个段落。
在未来,将有可能使用反斜杠来转义有序列表标记,但目前还做不到。