说实话,我第一次看到 .md 文件的时候,脑子里想的是“这又是哪个程序员装的怪癖”。但当我真正开始用 Markdown 写笔记、写文档,甚至写这篇教程的时候,我不得不承认:这是人类历史上最优雅的“轻标记”语言,没有之一。
你不需要像 Word 那样在工具栏里点来点去,你只需要专注内容,剩下的交给格式。今天,我们就把这套“写作黑科技”从头到尾扒干净。
一、 起步:为什么你要学 Markdown?
在深入语法之前,先回答一个问题:为什么要学它?
Markdown 的核心哲学是 分离内容与格式。
- 在 Word 里,你盯着“加粗”按钮,想着“这段要不要加粗”。
- 在 Markdown 里,你只需要在想加粗的文字两边加上
**,你的大脑全程在处理思想,而不是排版。
更重要的是它的通用性:
- GitHub 的代码注释、README 用 Markdown。
- 印象笔记、Notion、Obsidian 的核心格式是 Markdown。
- 博客平台(Medium、掘金、知乎)几乎都支持。
- 连 VS Code 的编辑器说明文件都是
.md。
学会它,你打通了 90% 的现代文字工作流。
二、 核心语法:从“Hello World”到段落结构
1. 标题:层级分明,一目了然
Markdown 用 # 号来定义标题。# 越多,字号越小。
# 一级标题 (H1)
## 二级标题 (H2)
### 三级标题 (H3)
#### 四级标题 (H4)
实战技巧:写长文档时,建议用 H2 作为章节,H3 作为小节。这样生成的目录(Table of Contents)才清晰。
2. 段落与换行:别把回车当换行
这是新手最容易踩的坑。在 Markdown 中,两个换行(即中间空一行)才代表一个新的段落。
第一段内容。
这里没有空行,所以它还是第一段的一部分,会紧紧贴在一起。
第二段内容。
这才会形成新的段落。
如果你真的想强制换行但不想分段落,需要在行尾加 两个空格,或者用 <br> 标签。
第一行
第二行(注意:行尾有两个空格)
3. 强调:加粗与斜体
| 符号 | 效果 | 代码示例 |
|---|---|---|
**文本** 或 __文本__ |
加粗 | **重要提示** |
*文本* 或 _文本_ |
斜体 | *注意* |
***文本*** |
加粗斜体 | ***极其重要*** |
注意:英文环境下,
*前后最好加空格,避免和行内代码混淆。中文环境下通常不需要。
4. 列表:条理清晰的关键
无序列表
用 -、+ 或 * 开头都可以。
- 苹果
- 香蕉
- 橙子
渲染结果:
- 苹果
- 香蕉
- 橙子
有序列表
用数字加点:1.
1. 第一步
2. 第二步
3. 第三步
渲染结果:
- 第一步
- 第二步
- 第三步
嵌套列表
缩进两个空格即可。
- 水果
- 苹果(红色)
- 香蕉(黄色)
- 蔬菜
- 胡萝卜
5. 行内代码与代码块:程序员的特权
如果你写技术文档,这个功能天天用。
行内代码:用反引号 ` 包裹。
在终端输入 `git commit -m "fix"` 即可提交。
代码块:三个反引号 ` 包裹,并指定语言高亮。
```python
def hello():
print("Hello, Markdown!")
```
渲染出来是这样的:
def hello():
print("Hello, Markdown!")
关键点:`
python后面的语言名决定了语法高亮颜色。不写的话,就是纯文本灰色背景。6. 引用:让文字“站”起来
用
>符号。> 正如爱因斯坦所说: > 想象力比知识更重要。 > > —— 当然,这可能是我编的
渲染效果:
正如爱因斯坦所说: 想象力比知识更重要。
—— 当然,这可能是我编的
7. 链接与图片:打破文本的边界
语法长得一模一样,只是图片多了一个 !。
链接:
[点击访问Google](https://www.google.com)
渲染:点击访问Google
图片:

[]里写替代文本(当图片加载失败时显示的内容,对 SEO 和盲人友好很重要)。()里写 URL。()后加""可以写悬停提示文字。
三、 进阶:表格与数学公式
1. 表格:对齐的艺术
表格是 Markdown 里语法最“丑”但也最实用的部分。
| 姓名 | 年龄 | 职业 |
| :--- | :---:| -----: |
| 张三 | 25 | 工程师 |
| 李四 | 30 | 设计师 |
- 第一行是表头。
- 第二行是分隔线,用
-组成。 :控制对齐:左对齐 (:---),居中对齐 (:---:),右对齐 (---:)。
渲染结果:
| 姓名 | 年龄 | 职业 |
|---|---|---|
| 张三 | 25 | 工程师 |
| 李四 | 30 | 设计师 |
2. 数学公式:KaTeX 或 MathJax
如果你在用 Typora、Obsidian 或 GitHub Flavored Markdown,支持双 $ 包裹的 LaTeX 公式。
行内公式:$E = mc^2$
块级公式:
$$
\int_{-\infty}^{+\infty} e^{-x^2} dx = \sqrt{\pi}
$$
渲染效果: 行内公式:\(E = mc^2\)
块级公式: $\( \int_{-\infty}^{+\infty} e^{-x^2} dx = \sqrt{\pi} \)$
四、 避坑指南:那些让你崩溃的细节
这里有几个真实踩过的坑,建议你背下来。
坑 1:中文标点后不要加空格(或加了也没用)
在英文写作中,句号后必须加空格。但在 Markdown 中文排版中,全角标点(,。!)后面不要手动加空格,否则渲染出来的段落间距会异常巨大,看起来像散装的。
坑 2:链接里的括号
如果你写一个链接,URL 本身包含括号,比如维基百科的链接:
[链接](https://zh.wikipedia.org/wiki/Markdown_(language))
这可能会出错,因为 ) 被当成了链接的结束。
解决方案:用尖括号把 URL 包起来。
[链接](<https://zh.wikipedia.org/wiki/Markdown_(language)>)
坑 3:特殊字符被转义
Markdown 把一些符号当成了“命令”,比如 #、*、_、(、)、[、]、{、}、~、`、|、>。
如果你想显示一个普通的 * 号(比如乘法),你得在它们前面加反斜杠 \。
3 * 4 = 12
如果不加反斜杠,它会试图把前后的 3 和 4 变成斜体,导致渲染错误。
正确写法:
3 \* 4 = 12
坑 4:有序列表的序号陷阱
很多编辑器会“智能地”把有序列表自动续上序号。但如果你手动写了 1. 1. 3.,渲染器可能会按照你写的数字显示,而不是自动从 1 开始。
建议:永远只写第一个 1.,后面的让编辑器自动生成,这样即使你删除或移动了行,序号也不会乱。
坑 5:HTML 标签的兼容性
虽然 Markdown 允许嵌入 HTML(比如 <img src="..." width="50%">),但这完全取决于渲染器。
- GitHub 允许大部分 HTML。
- 某些博客平台为了安全,会过滤掉 HTML。
- 原则:能用 Markdown 原生语法解决的,绝不用 HTML。只有当 Markdown 做不到时(比如复杂的表格嵌套、特定的布局),才上 HTML。
五、 实战技巧:如何写出专业的 Markdown 文档
1. 使用二级标题作为章节,并生成目录
在文档最前面,你可以手动写一个目录,或者利用工具(如 Obsidian、Typora)自动生成。
## 目录
- [基础语法](#一-起步为什么你要学-markdown)
- [进阶语法](#三-进阶表格与数学公式)
- [避坑指南](#四-避坑指南)
2. 善用分割线
用三个以上的 - 或 * 来分隔不同的主题块,视觉上更清爽。
---
渲染效果是一条横线:
3. 任务列表(Checkboxes)
这是 GitHub 和很多协作平台的神器。
- [x] 已完成的任务
- [ ] 待完成的任务
- [ ] 还有另一个待办
渲染结果:
- [x] 已完成的任务
- [ ] 待完成的任务
- [ ] 还有另一个待办
4. 折叠内容(Details)
为了让文章更简洁,可以使用 HTML 的 <details> 标签折叠冗长的内容。
<details>
<summary>点击查看详细解释</summary>
这里是可以隐藏的内容,比如代码细节、补充说明等。
</details>
点击“点击查看详细解释”才会展开下面的文字。
六、 工具推荐:工欲善其事,必先利其器
光知道语法不够,你需要一个好用的编辑器。
- VS Code:程序员首选。装几个插件(如“Markdown All in One”),就能拥有预览、快捷键、目录生成等功能。
- Typora:所见即所得的巅峰之作。没有预览窗口,打字就是最终效果。适合追求沉浸感写作的用户。
- Obsidian:双向链接笔记神器。基于本地 Markdown 文件,适合构建个人知识图谱。
- Notion:虽然它有自己的块编辑器,但完美支持 Markdown 快捷输入(输入
/可以唤起菜单)。
结语
Markdown 不是一个复杂的编程语言,它是一种思维模式。
它强迫你从“排版焦虑”中解放出来,回归到“内容本身”。当你熟练之后,你会发现,用 Markdown 写文档的速度,比用 Word 快三倍不止。
现在,打开你的编辑器,新建一个 .md 文件,写下你的第一行标题吧。
# 我的第一篇 Markdown 文档
加油,未来的 Markdown 高手!
