一页看完,不用再翻文档

Markdown 语法速查

Markdown 的全部语法其实很少,难的是那些「写了但不生效」的坑。 这一页按「源码 → 效果 → 说明」对照着排,左边是你该敲的字,中间是渲染出来的样子, 右边是要注意的地方。基础、进阶、GitHub 专属、中文排版、常见坑、可直接抄的模板, 一页到底。

基础语法

学会这十几个,日常写笔记和文档就够了。

# 一级标题
一级标题

# 和文字之间必须有空格,#标题 不生效。最多 6 级。

## 二级标题
### 三级标题
二级标题三级标题

别跳级:h2 下面直接跟 h4,导出或生成目录时会乱。

**粗体**
粗体

也可以用 __粗体__,但下划线形式在中文里容易出问题,建议统一用星号。

*斜体*
斜体

同上,_斜体_ 可用但不如星号稳。

~~删除线~~
删除线

这是 GFM(GitHub 风格)扩展,极简解析器可能不支持。

- 项目一
- 项目二
· 项目一· 项目二

符号可用 -、*、+,同一份文档里建议统一。

1. 第一步
2. 第二步
1. 第一步2. 第二步

数字写错也没关系,渲染时会按顺序自动编号 —— 但源码最好写对,便于阅读。

> 引用的文字
引用的文字

可以嵌套(>>),引用里也能放列表、代码块。

[链接文字](https://example.com)
链接文字

圆括号里是地址,网址里带括号时要用尖括号包起来。

![图片说明](图片地址)
图片说明

前面多个感叹号。方括号里是替代文字(图挂了会显示,也影响 SEO)。

`行内代码`
行内代码

内容里本身有反引号时,用两个反引号包裹。

```js
const a = 1;
```
const a = 1;

三个反引号开头,紧跟语言名(js / python / bash)才能高亮。

---

单独一行写三个减号,前后都要空行,否则会把上一行变成二级标题。

| 表头 | 表头 |
| --- | --- |
| 内容 | 内容 |
表头表头内容内容

第二行是分隔行,控制对齐(:--- 左、:---: 居中、---: 右)。表格前要空一行。

- [x] 已完成
- [ ] 未完成
☑ 已完成☐ 未完成

任务列表,在 GitHub 上可以直接点。中括号里打 x 表示已完成。

进阶语法

写长文、技术文档、论文时会用到。注意:这部分依赖解析器支持,不是所有地方都能渲染。

这里是正文[^1]

[^1]: 底部的注释
这里是正文1

脚注:正文标引用,文末给定义,渲染时会自动跳到页面底部。

[链接文字][ref]

[ref]: https://example.com
链接文字

引用式链接:地址集中放文末,正文里保持干净,同一地址多处复用。

$E = mc^2$
E = mc2

数学公式。行内用单个美元符,独立成行用两个。需要 KaTeX / MathJax 才能渲染,GitHub 已内置支持。

<details>
<summary>点开看答案</summary>

藏在里面的内容

</details>
▸ 点开看答案

折叠块:必须用 HTML 写,<summary> 后面要空一行,否则内容不渲染。

\*这不是斜体\*
*这不是斜体*

转义:在符号前加反斜杠,让它按字面显示。

[跳到附录](#附录)
跳到附录

页内锚点:括号里是 # 加标题文字。中文标题一般也能跳,但不同解析器规则不完全一致。

<!-- 这是注释 -->
(渲染后什么都看不到)

注释:写给自己或协作者的提醒,最终页面里不显示。

GitHub 专属(GFM)

这些在别的编辑器里可能不生效,但在 GitHub 的 README、Issue、PR 里都好用。

> [!NOTE]
> 有用的补充说明
ℹ︎ 有用的补充说明

GitHub 警告框,五种:NOTE / TIP / IMPORTANT / WARNING / CAUTION。首字母大写、方括号包住、必须写在引用里。

```js {2-3}
const a = 1;const b = 2;const c = 3;

在语言名后加花括号,可以高亮指定行,讲代码变化时很直观。

```mermaid
graph TD;
A-->B;
```
A → B(GitHub 与 Notion 会直接画成图)

代码块语言写 mermaid,平台会渲染成流程图 —— 这也是本站图表类目里最值得学的一个。

@someone 看下 #123
@someone 看下 #123

GitHub 专属:@ 提及会通知对方,# 加编号自动变成 issue / PR 链接。

:smile: :rocket:
? ?

emoji 短代码,两端的冒号不能省。各平台支持的名单不完全一样。

```diff
+ 新增的一行
- 删掉的一行
```
+ 新增的一行- 删掉的一行

diff 代码块会自动标出增删,写变更说明时很好用。

中文排版的几条习惯

语法之外的事 —— 决定了你的文档「看起来专不专业」。

在 Markdown 里写中文
在 Markdown 里写中文

中英文之间加空格,读起来呼吸感更好。这是中文排版最基本的习惯。

总共 100 个工具
总共 100 个工具

中文与数字之间也加空格。

文件 50 MB,占 30%
文件 50 MB,占 30%

数字与单位之间加空格,但 % 和 °C 是例外,不加。

他说:「这样就好。」
他说:「这样就好。」

中文用全角标点(,。:;!?「」),英文和代码用半角,不要混用。

# 怎么写好一篇笔记
怎么写好一篇笔记

标题结尾不加句号 —— 大部分排版规范都不加。

常见坑

排版的语法对了、内容也没问题,但显示出来就是不对劲 —— 八成是下面这几条之一。

回车不等于换行

Markdown 里写完一行直接回车,渲染出来还是在同一段里。要分段就空一行;只想换行不断段,就在行尾打两个空格再回车。这是新手最常卡的地方。

# 后面必须有空格

#标题 不生效,# 标题 才是标题。 顺带一提:#标签这种写法在社交平台常见,在 Markdown 里不是标题。

列表缩进要一致

嵌套列表用 2 个或 4 个空格,同一份文档里只用一种。 混着写会出现「子项跑到外面去」或者列表被拆成两段。

表格里竖线要转义

单元格内容里本身有竖线时,写成 \|,否则会被当成新的列。

代码块里出现三个反引号

内容本身含三个反引号时,外面改用四个反引号包裹, 或者整体缩进 4 个空格。

变量名里的下划线被吃掉

some_var_name 在某些解析器里会被当成斜体。稳妥做法是把变量包进行内代码,或者把斜体统一改用星号。

照抄就能用的模板

两个最高频的场景,结构已经排好了,把内容换掉即可。

项目 README 骨架

开源项目最常用的结构:一句话说清是什么、能做什么、怎么开始用。

# 项目名

一句话说明这个项目解决什么问题。

## 特性

- 特性一
- 特性二

## 快速开始

```bash
npx 项目名 --help
```

## 用法

```js
import { something } from "项目名";
```

## 许可证

MIT

笔记模板(带元信息)

顶部用 front-matter 记录标题、日期、标签,几乎所有笔记工具和静态站都认这个格式。

---
title: 笔记标题
date: 2026-09-10
tags: [读书, 普洱]
---

## 一句话结论

先写结论,再展开。

## 要点

- 要点一
- 要点二

## 参考

- [来源](https://example.com)

看完想动手?

语法不用背。打开编辑器边写边看效果,几次就熟了 —— 左边写、右边即时预览, 比背这份速查表快得多。

把本页转给朋友(短码 IAK4s5,回流可归因)