Markdown从入门到精通
文章目录
- Markdown从入门到精通
-
- 前言
- 一、Markdown是什么
- 二、Markdown优点
- 三、Markdown的基本语法
- 四、Markdown的高级用法
-
- 4.1 个人看法
- 4.2 制作待办事项
- 4.3 书写公式
-
- 4.3.1 希腊字母
- 4.3.2 上下标
- 4.3.3 括号和分隔符
- 4.3.4 分数
- 4.3.5 开方
- 4.3.6 省略号
- 4.3.7 向量
- 4.3.8 积分
- 4.3.9 多行公式
- 4.3.10 大括号与行标
- 4.3.11 矩阵
- 4.3.12 极限运算
- 4.3.13 累加、累乘运算
- 4.3.14 关系运算符
- 4.3.15 集合运算符
- 4.3.16 对数运算符
- 4.3.17 三角运算符
- 4.3.18 微积分运算符
- 4.3.19 逻辑运算符
- 4.3.20 戴帽符号
- 4.3.21 连线符号
- 4.3.22 箭头符号
- 4.3.23 字体转换
- 4.3.24 高亮一行公式
- 4.3.25 更改文字颜色
- 4.3.26 删除线
- 4.4 数组和表格进阶
- 4.5 连分数
- 4.6 交换图
- 4.7 绘制流程图
- 4.8 绘制序列图
- 4.9 绘制饼图
- 4.10 绘制甘特图
- 五、Markdown工具
- 六、总结
- 七、参考博文
前言
Markdown 是一种轻量级标记语言,通俗的说你记笔记写博客的时候不用管排版如何,只要将自己的内容写上去,Markdown 语法就可以给你搞定一切。
一、Markdown是什么

Markdown 是一种轻量级标记语言,创始人为约翰·格鲁伯(John Gruber)。
Markdown 允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的HTML文档。
Markdown 编写的文档可以导出 HTML 、Word、图像、PDF、Epub 等多种格式的文档。
Markdown 编写的文档后缀为 .md, .markdown。
Markdown 是现在现在是互联网上最流行的写作语言,许多网站平台的文章、博客、论文都是基于它写的。
例如:
国外的GitHub、Reddit、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge等;
国内的优快云、简书、掘金、博客园、知乎等。
推荐一款 Markdown 编辑器Typora(下载链接我放到文末)。这款软件足够轻量级,同时功能做到了尽可能的简单。至于Web编辑器优快云等博客平台及笔记软件都可以。
二、Markdown优点
好多人看到Markdown的标签是【轻量级】【标记】【语言】就直接放弃,想着自己学习了非常多的语言,为了记个笔记写个博客还要再学习一门语言吗?实则不然,Markdown的语言非常非常简单,如果想学,10分钟你完全可以学完90%的常用的语法,而且你从此摆脱排版的折磨,属实是强迫症党的福利了。它的优点不仅限于此:
- 纯文本编辑,只要是支持Markdown编辑的都能获得同样的结果,摆脱排版苦恼
- 学习成本低,常用的语法很少,简单易学快速上手
- 支持跨平台同步数据
- 支持插入图片、视频等
- 随时修改,不必担心word等工具出现排版错误
三、Markdown的基本语法
3.1 标题
使用#号标记,可以表示1-6级标题, 随#的个数递增,一级标题字号最大,六级标题字号最小。
代码如下:
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
效果如下:
注意:
- 最后一个
#字符与标题中间留一个空格- 标题应该置于行首,如果放入表格中可能无法正确解析
3.2 字体
星号与下划线都可以,单是斜体,双是粗体,三是粗斜体
| 代码 | 效果 |
|---|---|
*这是斜体* |
这是斜体 |
_这是斜体_ |
这是斜体 |
**这是粗体** |
这是粗体 |
__这是粗体__ |
这是粗体 |
***这是粗斜体*** |
这是粗斜体 |
___这是粗斜体___ |
这是粗斜体 |
快捷键:
加粗:Ctrl+B
斜体:Ctrl+I
3.3 换行
Markdown换行的方式有很多种:
- 直接在一句话后敲两个空格
- 两句话之间加一个空行
- 如果你在编辑的时候,想让一行文字在显示的时候换行,就在中间加
<br>
3.4 引用
Markdown 中引用通过符号 > 来实现。> 符号后通常加一个空格。
在引用的区块内,允许换行存在,换行并不会终止引用的区块。如果要结束引用,需要一行空白行,来结束引用的区块。
代码:
> 这是一个引用
效果:
这是一个引用
此外,引用还可以嵌套使用:
代码:
> 这是一个引用:
>> 这是一个引用的引用
>>> 这是一个引用的引用的引用
这是一个引用:
这是一个引用的引用
这是一个引用的引用的引用
3.5 链接
Markdown中插入链接的使用方式是:
代码:
[链接名称](链接地址)
<链接地址>
即是:
[这是我的主页](https://www.feihua.life)
或者
<https://www.feihua.life>
效果:
这是我的主页
或者
https://www.feihua.life
3.6 图片
Markdown中插入图片的使用方式是:
代码:

比如一张新闻图片:

效果:

3.7 列表
列表分为有序列表和无序列表
无序列表,使用*、+、-,再加一个空格作为列表的标记
有序列表,使用数字并加上.号,再加一个空格作为列表的标记
代码:
* 无序列表 1
+ 无序列表 2
- 无序列表 3
1. 有序列表 1
2. 有序列表 2
3. 有序列表 3
效果:
- 无序列表 1
- 无序列表 2
- 无序列表 3
- 有序列表 1
- 有序列表 2
- 有序列表 3
如果想要控制列表的层级,则需要在列表符号前使用Tab
代码:
+ 无序列表 1
+ 无序列表 2
+ 无序列表 2.1
+ 无序列表 2.2
1. 有序列表 1
1.1 有序列表 1.1
2. 有序列表 2
2.1 有序列表2.1
效果:
- 无序列表 1
- 无序列表 2
- 无序列表 2.1
- 无序列表 2.2
- 有序列表 1
1.1 有序列表 1.1 - 有序列表 2
2.1 有序列表2.1
3.8 分割线
Markdown 中给出了多种分割线的样式,我们可以使用分割线让文章结构更加的清晰。
分割线的使用,可以在一行中用三个- or * 来建立一个分割线,但是注意:在分割线的上面空一行!!!
代码:
---
***
- - -
* * *
效果:
3.9 删除线
删除线的的使用,可以在要添加删除线的文字前后添加两个~
代码:
~~这是要被删除的文字~~
效果:
这是要被删除的文字
3.10 下划线
下划线的使用和html中类似,在需要添加下划线的文字首尾添加<u>文本</u>
代码:
<u>这行文字已被添加下划线</u>
效果:
这行文字已被添加下划线
3.11 代码块
Markdown中代码块有两种:
如果在一行内需要引用代码,只需要用反引号 ` 引起来就好了。
代码:
`Hello` World.
效果:
Hello World.
如果是在一个块内需要引用代码,则在需要引用的代码块的前一行和后一行使用三个反引号,同时在前一个反引号后写入代码的语言。
代码:
效果:
```cpp
#include<iostream>
int main(){
printf("HelloWorld");
}
```
#include<iostream>
int main(){
printf("HelloWorld");
}
支持以下语言:
bash
c,clojure,cpp,cs,css
dart,dockerfile, diff
erlang
go,gradle,groovy
haskell
java,javascript,json,julia
kotlin
lisp,lua
makefile,markdown,matlab
objectivec
perl,php,python
r,ruby,rust
scala,shell,sql,swift
tex,typescript
verilog,vhdl
xml
yaml
3.12 表格
表格使用|来分割不同的单元格,使用-来分隔表头和其他行
:-将表头及单元格内容左对齐-:将表头及单元格内容右对齐:-:将表头及单元格内容居中
代码:
| 项目 | 价格 | 数量 |
| :-------- | -----: | :----: |
| 计算机 | \$1600 | 5 |
| 手机 | \$12 | 12 |
| 管线 | \$1 | 234 |
效果:
| 项目 | 价格 | 数量 |
|---|---|---|
| 计算机 | $1600 | 5 |
| 手机 | $12 | 12 |
| 管线 | $1 | 234 |
3.13 脚注
脚注是对文本的备注,我们时长在论文中看到脚注,在Markdown中的使用方法
代码:
使用 Markdown[^1]可以效率的书写文档, 直接转换成 HTML[^2], 你可以使用 Typora[^T] 编辑器进行书写。
[^1]: Markdown是一种纯文本标记语言
[^2]: HyperText Markup Language 超文本标记语言
[^T]: NEW WAY TO READ & WRITE MARKDOWN.
效果:
使用 Markdown1可以效率的书写文档, 直接转换成 HTML2, 你可以使用 Typora3 编辑器进行书写。
注意:脚注自动被搬运到最后面,请到文章末尾查看,并且脚注后方的链接可以直接跳转回到加注的地方。
3.14 特殊符号
对于Markdown中的语法符号,前面家反斜线\即可以显示符号本身。
代码:
\\
\*
\_
\+
\.
等等
效果:
*
_
+
.
四、Markdown的高级用法
4.1 个人看法
此处只简要提一下,如果想要了解更多详细的高级用法:菜鸟教程Markdown高级用法、Cmd Markdown 简明语法手册
4.2 制作待办事项
我们可以使用Markdown来制作一个待办事项,格式为、-[] 表示未完成;-[x]表示已完成
代码:
- [ ] 支持以 PDF 格式导出文稿
- [ ] 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
- [x] 新增 Todo 列表功能
- [x] 修复 LaTex 公式渲染问题
- [x] 新增 LaTex 公式编号功能
效果:
- 支持以 PDF 格式导出文稿
- 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
- 新增 Todo 列表功能
- 修复 LaTex 公式渲染问题
- 新增 LaTex 公式编号功能
4.3 书写公式
Markdown支持书写公式,例如书写一个质能守恒公式。
$$表示整行公式
代码:
$$
E=mc^2
$$
效果:
E = m c 2 E=mc^2 E=mc2
4.3.1 希腊字母
输入 \小写希腊字母英文全称 和 \首字母大写希腊字母英文全称 来分别输入小写和大写希腊字母。对于大写希腊字母与现有字母相同的,直接输入大写字母即可。
| 输入 | 显示 | 输入 | 显示 | 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|---|---|---|---|
| \alpha | α \alpha α | A | A A A | \beta | β \beta β | B | B B B |
| \gamma | γ \gamma γ | \Gamma | Γ \Gamma Γ | \delta | δ \delta δ | \Delta | Δ \Delta Δ |
| \epsilon | ϵ \epsilon ϵ | E | E E E | \zeta | ζ \zeta ζ | Z | Z Z Z |
| \eta | η \eta η | H | H H H | \theta | θ \theta θ | \Theta | Θ \Theta Θ |
| \iota | ι \iota ι | I | I I I | \kappa | κ \kappa κ | K | K K K |
| \lambda | λ \lambda λ | \Lambda | Λ \Lambda Λ | \mu | μ \mu μ | M | M M M |
| \nu | ν \nu ν | N | N N N | \xi | ξ \xi ξ | \Xi | Ξ \Xi Ξ |
| o | o o o | O | O O O | \pi | π \pi π | \Pi | Π \Pi Π |
| \rho | ρ \rho ρ | P | P P P | \sigma | σ \sigma σ | \Sigma | Σ \Sigma Σ |
| \tau | τ \tau τ | T | T T T | \upsilon | υ \upsilon υ | \Upsilon | Υ \Upsilon Υ |
| \phi | ϕ \phi ϕ | \Phi | Φ \Phi Φ | \chi | χ \chi χ | X | X X X |
| \psi | ψ \psi ψ | \Psi | Ψ \Psi Ψ | \omega | ω \omega ω | \Omega | Ω \Omega Ω |
| \partial | ∂ \partial ∂ | \nabla | ∇ \nabla ∇ |
部分字母有变量专用形式,以 \var- 开头。
| 小写形式 | 大写形式 | 变量形式 | 显示 |
|---|---|---|---|
| \epsilon | \Epsilon | \varepsilon | ϵ ∣ E ∣ ε \epsilon\mid\Epsilon\mid\varepsilon ϵ∣E∣ε |
| \theta | \Theta | \vartheta | θ ∣ Θ ∣ ϑ \theta\mid\Theta\mid \vartheta θ∣Θ∣ϑ |
| \rho | \Rho | \varrho | ρ ∣ P ∣ ϱ \rho\mid\Rho\mid\varrho ρ∣P∣ϱ |
| \sigma | \Sigma | \varsigma | σ ∣ Σ ∣ ς \sigma\mid\Sigma\mid\varsigma σ∣Σ∣ς |
| \phi | \Phi | \varphi | ϕ ∣ Φ ∣ φ \phi\mid\Phi\mid\varphi ϕ∣Φ∣φ |
4.3.2 上下标
KaTeX parse error: Undefined control sequence: \sideset at position 126: …{e},\text{i}\\ \̲s̲i̲d̲e̲s̲e̲t̲{^1_2}{^3_4}\bi…
4.3.3 括号和分隔符
()、[] 和 | 表示符号本身,使用 \{\} 来表示 {} 。当要显示大号的括号或分隔符时,要用 \left 和 \right 命令。
一些特殊的括号:
| 输入 | 显示 | 输入 | 显示 |
|---|---|---|---|
| \langle | ⟨ \langle ⟨ | \rangle | ⟩ \rangle ⟩ |
| \lceil | ⌈ \lceil ⌈ | \rceil | ⌉ \rceil ⌉ |
| \lfloor | ⌊ \lfloor ⌊ | \rfloor | ⌋ \rfloor ⌋ |
| \lbrace | { \lbrace { | \rbrace | } \rbrace } |
| \lvert | ∣ \lvert ∣ | \rvert | ∣ \rvert ∣ |
| \lVert | ∥ \lVert ∥ | \rVert | ∥ \rVert ∥ |
有时,我们需要在行内使用两个竖杠表示向量间的某种空间距离,可以这样写:\lVert \boldsymbol{X}_i - \boldsymbol{S}_j \rVert^2 → ∥ X i − S j ∥ 2 \lVert \boldsymbol{X}_i - \boldsymbol{S}_j \rVert^2 ∥Xi−Sj∥2
空格
有四种宽度的空格可以使用: \,、\;、\quad 和 \qquad,灵活使用 \text{n个空格} 也可以在任意位置实现空格。
同时存在一种负空格 \! 用来减小字符间距,一般在物理单位中使用。
重复使用 \! 命令能够实现不同元素的叠加渲染,如∧◯∧◯ 和 }!!!\div}!!!\div
- 例子:
\begin{array}{c|c}
\text{Spaces} & \text{Negative Space in Units} \\
\hline \\
\overbrace{a \! b}^{\text{\!}} \mid \underbrace{ab}_{\rm{default}} \mid \overbrace{a \, b}^{\text{\,}} \mid \underbrace{a \; b}_{\text{\;}} \mid \overbrace{a \quad b}^{\text{\quad}} \mid \underbrace{a \qquad b}_{\text{\qquad}} & \mathrm{N}\!\cdot\!\mathrm{m} \mid \mathrm{s}\!\cdot\!\mathrm{A} \mid \mathrm{kg}\!\cdot\!\mathrm{m}^2 \\
\end{array}
- 显示:
Spaces Negative Space in Units a b ⏞ ∣ a b ⏟ d e f a u l t ∣ a b ⏞ ∣ a b ⏟ ∣ a b ⏞ ∣ a b ⏟ N ⋅ m ∣ s ⋅ A ∣ k g ⋅ m 2 \begin{array}{c|c} \text{Spaces} & \text{Negative Space in Units} \\ \hline \\ \overbrace{a \! b}^{\text{\!}} \mid \underbrace{ab}_{\rm{default}} \mid \overbrace{a \, b}^{\text{\,}} \mid \underbrace{a \; b}_{\text{\;}} \mid \overbrace{a \quad b}^{\text{\quad}} \mid \underbrace{a \qquad b}_{\text{\qquad}} & \mathrm{N}\!\cdot\!\mathrm{m} \mid \mathrm{s}\!\cdot\!\mathrm{A} \mid \mathrm{kg}\!\cdot\!\mathrm{m}^2 \\ \end{array} Spacesab ∣default ab∣ab ∣ ab∣ab ∣ abNegative Space in UnitsN⋅m∣s⋅A∣kg⋅m2
一些常见的公式单位可表达如下:
- 例子:
$$ \mu_0=4\pi\times10^{
-7} \ \left.\mathrm{
\mathrm{
T}\!\cdot\!\mathrm{
m}}\middle/\mathrm{
A}\right. $$
$$ 180^\circ=\pi \ \mathrm{
rad} $$
$$ \mathrm{
N_A} = 6.022\times10^{
23} \ \mathrm{
mol}^{
-1} $$
- 显示:
μ 0 = 4 π × 1 0 − 7 T ⋅ m / A \mu_0=4\pi\times10^{-7} \ \left.\mathrm{\mathrm{T}\!\cdot\!\mathrm{m}}\middle/\mathrm{A}\right. μ0=4π×10−7 T⋅m/A
18 0 ∘ = π r a d 180^\circ=\pi \ \mathrm{rad} 180∘=π rad
N A = 6.022 × 1 0 23 m o l − 1 \mathrm{N_A} = 6.022\times10^{23} \ \mathrm{mol}^{-1} NA=6.022×1023 mol−1
4.3.4 分数
通常使用 \frac {分子} {分母} 来生成一个分数,分数可多层嵌套。 若分数只有一层,也可使用 分子 \over 分母 命令。 例内 \quad \mid \, 等均为空格或分隔符号,为方便公式格式对比而添加,请注意辨别。
- 例子:
$$ \frac{a-1}{b-1} \quad or \quad {a+1 \over b+1} $$
-
显示:
a − 1 b − 1 o r a + 1 b + 1 \frac{a-1}{b-1} \quad or \quad {a+1 \over b+1} b−1a−1orb+1a+1
当分式 仅有两个字符时 可直接输入 \frac ab 来快速生成一个 。
- 例子:
$$ \frac 12,\frac 1a,\frac a2 \quad \mid \quad \text{2 letters only:} \quad \frac 12a \,, k\frac q{r^2} $$
-
显示:
1 2 , 1 a , a 2 ∣ 2 letters only: 1 2 a , k q r 2 \frac 12,\frac 1a,\frac a2 \quad \mid \quad \text{2 letters only:} \quad \frac 12a \,, k\frac q{r^2} 21,a1,2a∣2 letters only:21a,kr2q
4.3.5 开方
使用 \sqrt [根指数,省略时为2] {被开方数} 命令输入开方。 本例内 \quad 均为空格符号,为方便公式格式对比而添加,请注意辨别。。
- 例子:
$$ \sqrt{2} \quad or \quad \sqrt[n]{3} $$
-
显示:
2 o r 3 n \sqrt{2} \quad or \quad \sqrt[n]{3} 2orn3
4.3.6 省略号
数学公式中常见的省略号有两种,\ldots 表示与 文本底线 对齐的省略号,\cdots 表示与 文本中线 对齐的省略号。
- 例子:
$$ f(x_1,x_2,\underbrace{\ldots}_{\rm ldots} ,x_n) = x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2 $$
- 显示: f ( x 1 , x 2 , … ⏟ l d o t s , x n ) = x 1 2 + x 2 2 + ⋯ ⏟ c d o t s + x n 2 f(x_1,x_2,\underbrace{\ldots}_{\rm ldots} ,x_n) = x_1^2 + x_2^2 + \underbrace{\cdots}_{\rm cdots} + x_n^2 f(x1,x2,ldots …,xn)=x12+x22+cdots ⋯+xn2
4.3.7 向量
使用 \vec{向量} 来自动产生一个向量。也可以使用 \overrightarrow 等命令自定义字母上方的符号。 例内 \quad \mid \, 等均为空格或分隔符号,为方便公式格式对比而添加,请注意辨别。
- 例子:
$$ \vec{a} \cdot \vec{b}=0 $$
-
显示:
a ⃗ ⋅ b ⃗ = 0 \vec{a} \cdot \vec{b}=0 a⋅b=0
-
例子:
$$ xy \text{ with arrows:} \quad \overleftarrow{xy} \; \mid \; \overleftrightarrow{xy} \; \mid \; \overrightarrow{xy} $$
-
显示:
x y with arrows: x y ← ∣ x y ↔ ∣ x y → xy \text{ with arrows:} \quad \overleftarrow{xy} \; \mid \; \overleftrightarrow{xy} \; \mid \; \overrightarrow{xy} xy with arrows:xy∣xy ∣xy
4.3.8 积分
使用 \int_积分下限^积分上限 {被积表达式} 来输入一个积分。
例子:
$$ \int_0^1 {x^2} \,{\rm d}x $$
显示:
∫ 0 1 x 2 d x \int_0^1 {x^2} \,{\rm d}x ∫01x2dx
本例中 \, 和 {\rm d} 部分可省略,但加入能使式子更美观,
4.3.9 多行公式
a = b + c + d = e + f \begin{align} a&=b+c+d\\ &=e+f \end{align} a=b+c+d=e+
Markdown从入门到精通全解析

本文详细介绍了Markdown,它是轻量级标记语言,可将纯文本转换为多种格式文档。阐述了其优点,如学习成本低、摆脱排版苦恼等。还介绍了基本语法,包括标题、字体等,以及高级用法,如制作待办事项、书写公式等,最后推荐了相关工具。
最低0.47元/天 解锁文章
1488

被折叠的 条评论
为什么被折叠?



