本文从 Obsidian 撰写发布
Markdown 语法完全指南(最全整理)
本指南涵盖所有标准 Markdown 语法、GFM(GitHub Flavored Markdown)扩展、常用技巧及注意事项。
1. 基础语法
1.1 标题
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题注意:# 后需加空格,最多六级。也可用 =(一级)和 -(二级)表示:
一级标题
========
二级标题
--------1.2 段落与换行
这是一个段落。段落由空行分隔。
这是第二段。
行尾加两个空格
实现换行(软换行)。
或者使用空行实现新段落。注意:连续两个空格+回车 = 换行;空行 = 新段落。
1.3 强调
*斜体* 或 _斜体_
**加粗** 或 __加粗__
***加粗斜体*** 或 ___加粗斜体___
~~删除线~~
<u>下划线(HTML标签)</u>注意:嵌套时需注意符号匹配,推荐使用 * 和 **。
1.4 列表
无序列表
- 项目1
- 项目2
- 子项目2.1
- 子项目2.2
* 项目3(使用*)
+ 项目4(使用+)有序列表
1. 第一项
2. 第二项
3. 子项2.1
4. 子项2.2
5. 第三项注意:有序列表数字不必连续,但建议保持规范。列表项之间用空行可产生更宽松间距。
任务列表(GFM)
- [ ] 未完成
- [x] 已完成1.5 引用
> 单层引用
> 继续引用
>> 嵌套引用
> 引用中可包含其他语法:
> - 列表
> **加粗**注意:> 后可加空格,需在每行开头。
1.6 代码
行内代码
使用 `code` 表示行内代码。缩进式代码块
缩进4个空格或1个Tab
这是代码块围栏式代码块(GFM,推荐)
print("Hello, World!")
console.log("Hello");
echo "Hello"
注意:围栏式可指定语法高亮语言。
1.7 分割线
---
***
___注意:至少三个符号,前后需有空行避免与标题冲突。
1.8 链接
行内链接
[链接文本](https://example.com "可选标题")参考式链接
[链接文本][引用标识]
[引用标识]: https://example.com "可选标题"自动链接
<https://example.com>
<email@example.com>相对路径
[关于](/about/)
[文件](./file.md)1.9 图片



![带引用的图片][图片引用]
[图片引用]: ./image.png "标题"注意:图片语法与链接类似,前加 !。
1.10 转义字符
\* 显示星号
\_ 显示下划线
\# 显示井号
\[ \] \{ \} \( \)
\` 显示反引号
\. 显示点号
\! 显示感叹号
\- 显示减号
\+ 显示加号
\\ 显示反斜杠本身2. GFM 扩展语法
2.1 表格
| 左对齐 | 居中对齐 | 右对齐 |
| :--- | :---: | ---: |
| 内容1 | 内容2 | 内容3 |
| 内容4 | 内容5 | 内容6 |注意:冒号位置决定对齐方式,表头与内容间必须有分隔线。
2.2 脚注
这是带脚注的句子[^1]。
[^1]: 这是脚注内容。注意:脚注标识可以是数字或单词。
2.3 删除线
~~删除线~~2.4 自动URL链接
直接输入链接:https://example.com 会自动识别。注意:某些解析器需要加 <> 才自动链接。
2.5 Emoji(GFM)
:smile: :heart: :rocket: :+1:注意:GitHub 支持完整 Emoji 短代码。
2.6 高亮(部分扩展)
==高亮文本==(非标准,需解析器支持)2.7 下标/上标(部分扩展)
H~2~O(下标)
X^2^(上标)3. 高级与扩展语法
3.1 定义列表(部分扩展)
术语
: 定义内容
术语2
: 定义2
: 另一个定义3.2 缩写(部分扩展)
*[HTML]: Hyper Text Markup Language
*[CSS]: Cascading Style Sheets
我们使用HTML和CSS构建网页。3.3 图表与流程图(Mermaid)
graph TD;
A-->B;
A-->C;3.4 数学公式(KaTeX / MathJax)
行内:$E=mc^2$
块级:
$$
\int_{-\infty}^{\infty} e^{-x^2} dx = \sqrt{\pi}
$$3.5 警告/提示框(部分平台)
> [!NOTE]
> 这是一个提示。
> [!WARNING]
> 警告信息。
> [!IMPORTANT]
> 重要信息。3.6 HTML 标签支持
<span style="color:red">红色文字</span>
<div align="center">居中内容</div>
<br> 换行
<kbd>Ctrl</kbd> + <kbd>C</kbd>注意:大多数 Markdown 解析器允许行内 HTML。
4. 特殊用法与技巧
4.1 嵌套与混合
> 引用中的列表:
> - 项目1
> - 项目2
> > 嵌套引用
- 列表中的代码块:print("Hello")
1. 有序列表中的表格:
| 列1 | 列2 |
| --- | --- |
| a | b |4.2 列表中的段落与多行内容
- 第一项
这是第一项的后续段落(缩进4空格或1Tab)。
- 第二项4.3 避免列表自动识别
2022\. 以数字开头加反斜杠避免被识别为有序列表。
\- 以减号加反斜杠避免被识别为无序列表。4.4 锚点跳转
[跳转到标题](#标题名称)注意:标题名称需转为小写,空格转 -,特殊字符去除。
4.5 图片大小控制(HTML方式)
<img src="image.png" width="300" height="200" alt="描述">4.6 注释/隐藏内容
<!-- 这是HTML注释,在大多数Markdown解析器中不可见 -->5. 最佳实践与注意事项
5.1 通用注意事项
- 空格与空行:多数符号后需空格(如
#、-、>),空行用于分段。 - 特殊字符转义:避免与语法冲突时使用
\转义。 - 不要混用不同符号:如列表使用
-就统一,避免混用*+。 - 代码块语言标识:尽量指定,便于语法高亮。
- 链接文本与URL:尽量简洁明了,URL可加标题。
- 图片替代文本:务必填写,便于可访问性。
- 表格格式:保持列对齐,便于阅读和编辑。
- 避免过度嵌套:嵌套过深可能导致解析错误。
- 跨平台兼容性:非标准语法可能不被所有解析器支持。
- 缩进一致性:使用空格或Tab,推荐统一使用4空格缩进。
5.2 编辑器推荐
- Typora:实时预览,支持GFM及扩展。
- Obsidian:支持双向链接、图谱、丰富扩展。
- VS Code:安装
Markdown All in One插件。 - 在线工具:Markdown Live Preview、StackEdit。
- 格式转换:Pandoc 可转 PDF、Word、HTML 等。
5.3 常见问题
- 换行无效:检查是否行尾有两个空格或使用空行。
- 列表错乱:检查缩进是否统一,是否有空行干扰。
- 代码块不生效:检查围栏
`是否独立成行。 - 表格不渲染:检查表头分隔线
---是否存在。 - 链接跳转失败:锚点名称是否与标题匹配。
- 图片不显示:检查路径是否正确,URL是否有效。
6. 速查表(简要版)
# 标题1 ## 标题2 ### 标题3
**加粗** *斜体* ***加粗斜体***
~~删除线~~ `行内代码` --- 分割线
- 无序列表 1. 有序列表 - [ ] 任务列表
> 引用 [链接](url) 
| 表格 | 列2 | :---: 居中对齐
```代码块``` ^[脚注] :emoji:7. 结束语
本指南涵盖了标准 Markdown、GFM 以及主流扩展语法。实际使用中请根据解析器支持情况灵活选择。建议保存此文档为 markdown-cheatsheet.md,以便随时查阅。