markdown语法之列表与缩进
- 在markdown语法中, 用*或+或-在行首表示无序列表。在这些符号之后应该空一格然后输入内容。
例如 + 无序列表 * 无序列表 - 无序列表
会被markdown语法渲染为
- 无序列表
-
列表嵌套
- 如果希望一个没有加列表点的段落和一个列表项的内容显示对齐。需要把非列表段落行首打一个Tab(或者四个Space,以后使用Tab的地方类似,不再强调)。
* 我们需要……
还没说完……
以及……PS:……
显示为
-
我们需要……
还没说完……
以及……
PS:……
使用该功能的时候特别注意不要多敲Tab或Space。一行行首存在Tab(或行首Space大于等于4个),且不是多层列表嵌套或列表对齐,就会识别为代码段落。
- 如果希望一个列表作为另一个列表的子项目同样可以使用Tab实现。
* 做一些事 * 做另一些事 + 第一步 + 第二步 * 另外做……
显示为
- 做一些事
- 做另一些事
- 第一步
- 第二步
- 另外做……
源代码中使用什么符号和渲染的结果没有直接关系。把上边的
+
换成*
显示效果也一样。但是这样写可以增强源代码结构性。实际使用中,尽量不要同级使用不同符号。同理对于不同级别尽量使用不同符号。如果列表、代码段落、引用相互嵌套的时候,一定注意数清楚每行应该用几个Tab。
-
有序列表:用数字加‘.’在行首表示有序列表。在‘.’后应该空一格再写内容。
有如下3点: 1. 无序 2. 有序 3. 缩进
显示为
有如下3点:
- 无序
- 有序
- 缩进
也可以使用ASCII中的
)
代替.
符号,但是和无序列表一样尽量不要在同一级别混用两种样式。有序列表的对齐和分级与无序列表类似。但是额外注意有序列表序号不要写乱,虽然有时候渲染会自动纠正序号。
-
如果一行被标记为列表项。那么不论这一行之前有没有空行,本行和上一行都被视为两个段落。但是如果后边没有空行且下一行不是列表项,则本行仍可与后一行属于同一段落。
aaa * 本行后边没有双空格 bbb
aaa
- 本行后边有双空格
bbb
显示为
aaa
- 本行后边没有双空格
bbb
aaa
- 本行后边有双空格
bbb
- 本行后边有双空格
-
关于缩进的“容忍度”
-
行首如果有大于等于4个Space,本行被视为代码段落。代码段落选然后会原样输出所有符号。
-
标题标记,列表标记符号之后除了必须的那一个Space,如果还有大于等于4分割Space,那么原本标记的格式会失效,认为是后接了一个代码段落。(后边的引用块也有类似情况。)
-