列表語法
列表是組織信息的重要方式,Markdown 支持有序列表和無序列表,還能創建嵌套列表和任務列表。
無序列表
基本語法
使用 -
、*
或 +
創建無序列表:
markdown
- 項目 1
- 項目 2
- 項目 3
* 項目 1
* 項目 2
* 項目 3
+ 項目 1
+ 項目 2
+ 項目 3
渲染效果:
- 項目 1
- 項目 2
- 項目 3
符號選擇建議
符號 | 特點 | 推薦場景 |
---|---|---|
- | 最常用,簡潔 | 一般推薦 |
* | 與強調語法一致 | 保持風格統一 |
+ | 較少使用 | 特殊區分需要 |
建議:在整個文檔中保持符號一致性。
有序列表
基本語法
使用數字加點號創建有序列表:
markdown
1. 第一項
2. 第二項
3. 第三項
渲染效果:
- 第一項
- 第二項
- 第三項
數字序號
數字的實際值並不重要,Markdown 會自動生成正確的序號:
markdown
1. 第一項
3. 第二項
8. 第三項
渲染效果:
- 第一項
- 第二項
- 第三項
起始數字
可以指定起始數字:
markdown
3. 第三項
4. 第四項
5. 第五項
渲染效果:
- 第三項
- 第四項
- 第五項
嵌套列表
基本嵌套
使用縮進(2-4個空格)創建嵌套列表:
markdown
- 一級項目 1
- 二級項目 1.1
- 二級項目 1.2
- 一級項目 2
- 二級項目 2.1
- 三級項目 2.1.1
- 三級項目 2.1.2
- 二級項目 2.2
渲染效果:
- 一級項目 1
- 二級項目 1.1
- 二級項目 1.2
- 一級項目 2
- 二級項目 2.1
- 三級項目 2.1.1
- 三級項目 2.1.2
- 二級項目 2.2
- 二級項目 2.1
混合嵌套
有序列表和無序列表可以互相嵌套:
markdown
1. 有序項目 1
- 無序子項目 1.1
- 無序子項目 1.2
2. 有序項目 2
1. 有序子項目 2.1
2. 有序子項目 2.2
- 無序孫項目 2.2.1
- 無序孫項目 2.2.2
渲染效果:
- 有序項目 1
- 無序子項目 1.1
- 無序子項目 1.2
- 有序項目 2
- 有序子項目 2.1
- 有序子項目 2.2
- 無序孫項目 2.2.1
- 無序孫項目 2.2.2
列表中的多段落內容
段落延續
在列表項中包含多個段落:
markdown
1. 第一項
這是第一項的第二段落。需要縮進以保持在列表項內。
2. 第二項
這是第二項的第二段落。
這是第二項的第三段落。
3. 第三項
渲染效果:
第一項
這是第一項的第二段落。需要縮進以保持在列表項內。
第二項
這是第二項的第二段落。
這是第二項的第三段落。
第三項
代碼塊
在列表中包含代碼塊:
markdown
1. 安裝依賴
```bash
npm install express
創建服務器
javascriptconst express = require('express'); const app = express();
啟動服務器
### 引用塊
在列表中包含引用:
```markdown
1. 准備工作
> 確保你有足夠的磁盤空間
> 建議至少保留 10GB 空間
2. 開始安裝
任務列表
基本語法
使用 - [ ]
創建未完成任務,- [x]
創建已完成任務:
markdown
- [x] 完成的任務
- [ ] 未完成的任務
- [x] 另一個完成的任務
- [ ] 待辦事項
渲染效果:
- [x] 完成的任務
- [ ] 未完成的任務
- [x] 另一個完成的任務
- [ ] 待辦事項
嵌套任務列表
markdown
- [x] 項目規劃
- [x] 需求分析
- [x] 技術調研
- [ ] 原型設計
- [ ] 開發階段
- [ ] 前端開發
- [x] 頁面布局
- [ ] 交互功能
- [ ] 後端開發
- [ ] API 設計
- [ ] 數據庫設計
- [ ] 測試階段
渲染效果:
- [x] 項目規劃
- [x] 需求分析
- [x] 技術調研
- [ ] 原型設計
- [ ] 開發階段
- [ ] 前端開發
- [x] 頁面布局
- [ ] 交互功能
- [ ] 後端開發
- [ ] API 設計
- [ ] 數據庫設計
- [ ] 前端開發
- [ ] 測試階段
常見錯誤和解決方案
1. 縮進不正確
markdown
❌ 錯誤:縮進不一致
- 項目 1
- 子項目 1.1
- 子項目 1.2 ← 縮進錯誤
✅ 正確:保持一致縮進
- 項目 1
- 子項目 1.1
- 子項目 1.2
2. 列表項之間的空行
markdown
❌ 錯誤:不必要的空行導致列表斷開
- 項目 1
- 項目 2 ← 這會創建兩個獨立的列表
✅ 正確:連續的列表項
- 項目 1
- 項目 2
3. 數字後缺少空格
markdown
❌ 錯誤:
1.第一項 ← 缺少空格
2.第二項
✅ 正確:
1. 第一項
2. 第二項
特殊情況處理
轉義列表符號
如果需要在行首顯示列表符號但不創建列表:
markdown
\- 這不是列表項
\* 這也不是列表項
\1. 這不是有序列表項
渲染效果:
- 這不是列表項 * 這也不是列表項 \1. 這不是有序列表項
列表項中的代碼
markdown
- 安裝 `npm install package-name`
- 運行 `npm start`
- 在瀏覽器中訪問 `http://localhost:3000`
渲染效果:
- 安裝
npm install package-name
- 運行
npm start
- 在瀏覽器中訪問
http://localhost:3000
列表項中的鏈接
markdown
- [GitHub](https://github.com) - 代碼托管平台
- [Stack Overflow](https://stackoverflow.com) - 問答網站
- [MDN](https://developer.mozilla.org) - 開發文檔
渲染效果:
- GitHub - 代碼托管平台
- Stack Overflow - 問答網站
- MDN - 開發文檔
最佳實踐
1. 保持一致性
markdown
✅ 推薦:統一使用破折號
- 項目 A
- 項目 B
- 項目 C
❌ 不推薦:混合使用符號
- 項目 A
* 項目 B
+ 項目 C
2. 合理使用嵌套
markdown
✅ 推薦:適度嵌套
- 主要功能
- 用戶管理
- 內容管理
- 輔助功能
- 日志記錄
- 數據備份
❌ 不推薦:過深嵌套
- 功能
- 主要功能
- 核心功能
- 基礎功能
- 基本功能 ← 太深了
3. 語義化組織
markdown
✅ 推薦:按邏輯分組
## 開發工具
- 代碼編輯器
- 版本控制
- 調試工具
## 設計工具
- 原型設計
- 圖像處理
- 界面設計
❌ 不推薦:無邏輯堆砌
- 代碼編輯器
- 原型設計
- 版本控制
- 圖像處理
HTML 輸出
Markdown 列表轉換為 HTML:
markdown
- 項目 1
- 項目 2
轉換為:
html
<ul>
<li>項目 1</li>
<li>項目 2</li>
</ul>
markdown
1. 項目 1
2. 項目 2
轉換為:
html
<ol>
<li>項目 1</li>
<li>項目 2</li>
</ol>
實用示例
購物清單
markdown
## 今日購物清單
### 生活用品
- [ ] 洗發水
- [ ] 牙膏
- [x] 毛巾
### 食物
- [ ] 牛奶
- [ ] 面包
- [x] 雞蛋
- [ ] 水果
- [ ] 蘋果
- [x] 香蕉
- [ ] 橙子
學習計劃
markdown
## 本月學習計劃
1. **第一周**:基礎知識
- [x] 閱讀教程第1-3章
- [x] 完成練習題 1-10
- [ ] 觀看視頻課程 1-5
2. **第二周**:實踐項目
- [ ] 創建簡單項目
- [ ] 實現基本功能
- [ ] 添加樣式設計
3. **第三周**:進階內容
- [ ] 學習高級特性
- [ ] 優化項目性能
- [ ] 編寫測試用例
4. **第四周**:總結復習
- [ ] 整理學習筆記
- [ ] 准備期末項目
- [ ] 復習重點內容
API 功能列表
markdown
## API 端點
### 用戶管理
1. `GET /api/users` - 獲取用戶列表
- 支持分頁
- 支持搜索過濾
2. `POST /api/users` - 創建新用戶
- 需要管理員權限
- 驗證郵箱唯一性
3. `PUT /api/users/:id` - 更新用戶信息
- 用戶只能更新自己的信息
- 管理員可以更新任何用戶
### 內容管理
- `GET /api/posts` - 獲取文章列表
- `POST /api/posts` - 創建新文章
- `DELETE /api/posts/:id` - 刪除文章
相關語法
練習
創建以下類型的列表:
- 一個三級嵌套的項目結構
- 一個包含代碼示例的技術步驟列表
- 一個混合有序和無序的復雜列表
- 一個包含任務狀態的項目清單