Markdown 列表
行首写 - 是无序列表,写 1. 是有序列表。本文介绍嵌套、起始编号、列表项里的段落和代码,以及列表有时会重新编号的原因。
简短回答
Markdown 怎么写列表?
无序列表在每行开头写 -、* 或 + 加一个空格;有序列表在每行开头写数字和英文句点,例如 1.。把列表项缩进,就会嵌套在上一项下面。
Markdown
- 牛奶
- 鸡蛋
- 面包
1. 预热烤箱
2. 搅拌面糊
3. 烤 30 分钟显示效果
- 牛奶
- 鸡蛋
- 面包
- 预热烤箱
- 搅拌面糊
- 烤 30 分钟
列表的写法和示例
列表只有几条关于符号和缩进的规则,下面的示例逐条演示。
无序列表
-、*、+ 生成同样的列表。一个列表里只用一种符号,换符号会开始一个新列表。
Markdown
- 规划行程
- 预订机票
- 收拾行李显示效果
- 规划行程
- 预订机票
- 收拾行李
有序列表
只有第一个数字有作用,后面的项会按顺序编号,所以每项都可以写 1.,调整顺序时不用改数字。
Markdown
1. 预热烤箱
1. 搅拌面糊
1. 烤 30 分钟显示效果
- 预热烤箱
- 搅拌面糊
- 烤 30 分钟
从其他数字开始
第一个数字决定从几开始,被打断的列表可以接着编号。
Markdown
3. 第三步
4. 第四步显示效果
- 第三步
- 第四步
嵌套列表
子项要缩进到和上一项的文字对齐:- 下面缩进两个空格,1. 下面缩进三个空格。
Markdown
1. 水果
- 苹果
- 梨
2. 蔬菜
- 胡萝卜
- 橙色的
- 紫色的显示效果
- 水果
- 苹果
- 梨
- 蔬菜
- 胡萝卜
- 橙色的
- 紫色的
- 胡萝卜
列表项里的段落和代码
空一行,再把后续文字或代码缩进到和列表项文字对齐。
Markdown
1. 安装 Pandoc:
```bash
brew install pandoc
```
2. 查看版本:
```bash
pandoc --version
```显示效果
-
安装 Pandoc:
brew install pandoc -
查看版本:
pandoc --version
不想变成列表的数字
以数字加英文句点开头的行会变成列表,在句点前加反斜杠就会保留为普通文字。
Markdown
1986\. 那是很好的一年。
1986. 那是很好的一年。显示效果
1986. 那是很好的一年。
- 那是很好的一年。
各平台的列表支持
列表几乎处处可用,Notion 等编辑器会在输入时把符号转换成列表块。
| 应用 | 支持情况 | 说明 |
|---|---|---|
| GitHub / GitLab | 支持 | 三种无序符号、有序列表和嵌套都支持,会保留起始编号。 |
| Discord | 支持 | 消息里可以用 -、* 和 1. 列表。 |
| Slack | 有差异 | 在输入框里输入 * 或 1. 加空格会开始列表。 |
| Obsidian | 支持 | 支持列表和嵌套,按 Tab 缩进列表项。 |
| Notion | 支持 | 输入 - 或 1. 加空格会生成列表块。 |
| Typora | 支持 | 支持无序、有序和嵌套列表。 |
常见问题
Markdown 无序列表怎么写?
每行开头写
-、* 或 +,后面加一个空格。三种符号生成同样的 <ul> 列表,一个列表里统一用一种。为什么有序列表又从 1 开始了?
列表项之间的内容打断了列表,通常是没有缩进到列表项下面的文字或代码。把它缩进到和列表项文字对齐,或者让下一个列表从需要的数字开始,例如
4.。怎样写嵌套列表?
把子项缩进到和父项文字对齐:
- 下面缩进两个空格,1. 下面缩进三个空格。大多数渲染器也接受四个空格。有序列表的数字有用吗?
只有第一个数字有用,它决定从几开始,后面的项会按顺序编号,所以每项都写
1. 也没问题。怎样让两个列表紧挨着又互相独立?
第二个列表换一种符号,例如前一个用
-、后一个用 *;或者在两个列表之间加一行文字或 HTML 注释 <!-- -->。列表项里怎么加段落或代码块?
空一行,再缩进到和列表项文字对齐:
- 下面两个空格,1. 下面三个空格。行首是数字但不想变成列表怎么办?
在句点前加反斜杠:
2024\. 是很好的一年。紧凑列表和宽松列表有什么区别?
列表项之间没有空行时是紧凑列表。只要有两项之间有空行,整个列表就变成宽松列表:每项都是一个段落,项与项之间的距离更大。