无序列表 #

概述 #

无序列表用于展示没有特定顺序的项目,使用符号标记每个列表项。

基本语法 #

使用 -*+ 作为列表标记:

markdown
- 项目一
- 项目二
- 项目三
markdown
* 项目一
* 项目二
* 项目三
markdown
+ 项目一
+ 项目二
+ 项目三

渲染效果:

  • 项目一
  • 项目二
  • 项目三

标记符号 #

三种符号等价 #

符号 名称 推荐程度
- 连字符 推荐
* 星号 可用
+ 加号 较少使用

推荐使用连字符 #

markdown
- 推荐使用连字符
- 可读性更好
- 与其他语法区分明显

列表项内容 #

简单列表项 #

markdown
- 苹果
- 香蕉
- 橘子

包含多个段落的列表项 #

列表项可以包含多个段落,后续段落需要缩进:

markdown
- 第一项

  这是第一项的第二段内容。

- 第二项

  这是第二项的第二段内容。

渲染效果:

  • 第一项

    这是第一项的第二段内容。

  • 第二项

    这是第二项的第二段内容。

包含其他元素 #

markdown
- 第一项
  - 嵌套项一
  - 嵌套项二
- 第二项
  
  第二项的段落内容。
  
  ```javascript
  console.log('代码块');
text

## 列表嵌套

### 基本嵌套

使用缩进(2 或 4 个空格)创建嵌套列表:

```markdown
- 水果
  - 苹果
  - 香蕉
- 蔬菜
  - 西红柿
  - 黄瓜

渲染效果:

  • 水果
    • 苹果
    • 香蕉
  • 蔬菜
    • 西红柿
    • 黄瓜

多级嵌套 #

markdown
- 一级列表
  - 二级列表
    - 三级列表
      - 四级列表

嵌套有序与无序列表 #

markdown
- 水果
  1. 苹果
  2. 香蕉
- 蔬菜
  1. 西红柿
  2. 黄瓜

列表起始 #

列表前需要空行 #

markdown
这是一个段落。

- 列表项一
- 列表项二

列表后需要空行 #

markdown
- 列表项一
- 列表项二

这是另一个段落。

常见问题 #

问题1:列表项不连续 #

markdown
- 项目一

- 项目二        ← 会被解析为两个独立列表

问题2:缩进不一致 #

markdown
- 项目一
  - 嵌套项
 - 错误缩进      ← 缩进不一致会导致解析问题

问题3:列表标记后无空格 #

markdown
-项目一         ← 错误:没有空格
- 项目一        ← 正确:有空格

最佳实践 #

1. 统一使用一种符号 #

markdown
推荐:
- 项目一
- 项目二
- 项目三

不推荐:
- 项目一
* 项目二
+ 项目三

2. 保持缩进一致 #

markdown
- 一级项目
  - 二级项目(2空格或4空格,保持一致)
    - 三级项目

3. 长列表项格式化 #

markdown
- 这是一个比较长的列表项,
  可以换行继续写,
  保持缩进对齐。
- 另一个列表项

实际应用 #

功能列表 #

markdown
## 功能特性

- 用户认证
  - 登录/注册
  - 密码找回
  - 第三方登录
- 数据管理
  - 增删改查
  - 批量操作
  - 数据导出
- 系统设置
  - 基础配置
  - 权限管理

技术栈 #

markdown
## 技术栈

- 前端
  - React
  - TypeScript
  - Tailwind CSS
- 后端
  - Node.js
  - Express
  - MongoDB

注意事项 #

markdown
## 注意事项

- 请确保已安装 Node.js 16+
- 配置文件需要放在项目根目录
- 生产环境请使用 HTTPS

下一步 #

继续学习 有序列表

最后更新:2026-03-24