Markdown 语法小结

Markdown Cheat Sheet

ZingLix July 21, 2017

鉴于最近 Markdown 使用比较多,在 Github 和这一博客都需要用到 Markdown ,所以写了一篇这一文章来总结下语法。

总述

在 Markdown 中,每一个段落前后都必须是空行,否则按同一段落处理,不换行。 如果在段落中需要换行,则需要加入 <br> 或者在前一行末尾加入至少两个空格。大多数区块如表格都视为一个段落。

标题

标题以 # 为开头的,# 数量代表不同级别标题,最多六级。

1
2
3
4
# 一级标题
## 二级标题
### 三级标题
###### 六级标题

引用

引用在行首用 > 来表明,可以用多个 > 进行嵌套引用。

1
2
> 引用语法
> > 嵌套引用

实际效果:

引用 实际效果

嵌套引用

列表

在每行开头用 * , + , - 代表列表开始。

1
2
3
* 这是列表
+ 加号和星号效果相同
- 减号与星号效果相同
  • 列表实际效果
  • 我是列表~~

同时可以用” 1. “,” 2. “,来表示带有编号的列表。同时可以在每一层之前加空格实现嵌套。还有可以在之前用 [ ] [x] 来表示完成和未完成的项目。

1
2
3
4
5
6
1. 带编号的列表
2. 文档中数字与生成数字无关
8. 前面编号混乱,生成的仍是顺序的
   + 嵌套效果
   + [ ] 未完成
   + [x] 已完成
  1. 带编号的列表
  2. 文档中数字与生成数字无关
  3. 前面编号混乱,生成的仍是顺序的
    • 嵌套效果
    • 未完成
    • 已完成

分割线

可以用以下几种方式代表分割线。

1
2
3
4
* * *
***
- - -
------------

实际效果:


链接

链接以如下形式表示,链接可以用绝对路径和相对路径,之后双引号内内容可选,表示鼠标放在链接上时解释。

1
2
[文档中显示文字](链接 "介绍")
[链接指向本文档](https://zinglix.xyz/2017/07/21/MD-Syntax/ "介绍在此")

实际效果: 链接指向本文档

图片

图片与链接形式类似,只是在链接之前加一个 ! 以表示图片。链接可以是URL,也可以是文件路径,介绍与链接一样。

1
![图片名](图片链接 “介绍”)

文字特效

文字被不同符号包围会运用不同特效,如下表所示。 被包裹文字不能含有空格,否则不会应用效果。

表示 效果
*斜体* 测试
_斜体_ 测试
**粗体** 测试
__粗体__ 测试
~~划线~~ 测试

表格

表格以 | 来分割不同方块,第二行控制对齐方式,默认左对齐。两侧的 | 可选。

1
2
3
| 标题 | 标题 | 标题|
|:---|---:|:---:|
:-表示左对齐|-:表示右对齐|:-:表示居中

实际效果:

标题 标题 标题
:- - - 表示左对齐 - - -: 表示右对齐 :- - -: 表示居中

代码块

代码块以 ~~~ 包围,如下所示,同时也是代码块实际效果。

1
2
3
~~~
代码放这
~~~

或者可以如下所示,用三个 ` 来代替 ~~~ ,同时可以在开头加上语言名称来实现高亮(可能需要其他相应插件来配合,如 Rouge)。

1
2
3
4
5
6
7
8
``` C++
#include <iostream>

int main(){
  std::cout << "Test";
  return 0;
}
```

实际效果:

1
2
3
4
5
6
#include <iostream>

int main(){
  std::cout << "Test";
  return 0;
}

转义

由之前介绍可以看出,特殊效果均以某个符号为标志,那么当真的需要输入这一符号又会遇到歧义时,则需要转义。 转义符号为 \ ,在需要被转义的符号前加一个 \ 即可完成转义。比如需要 * 时,则需要在编辑器中输入 \* 。 可能需要被转义的有 \ ` * _ {} [] () + - . ! 。