Markdown简介
什么是Markdown?
Markdown
是一种轻量级标记语言,创始人为John Gruber
。它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML
文档。
为什么要学习Markdown?
Markdown
的优势在于它的易学习、高可读性、轻量化、版本控制。
易学习
Markdown
的语法简单直观,易于上手。
传统的排版工具(例如Word
)需要频繁地点击按钮调整样式,且学习成本较高。如果你有用Word
写过严格要求格式的报告或是毕业论文的经历,都会遭遇以下情况:
- 难以上手,面对大量按钮和看不懂的说明束手无策
-
排版格式不正确,改格式改到疯
而Markdown
语法用#
、*
、>
等符号直接标记结构,双手几乎无需离开键盘。
只需要掌握几个简单的语法,就可以上手Markdown
文档编写。你将也不为文章的排版和样式发愁。
高可读性
下面是一段用Markdown
书写的内容:
## 这是一个 Markdown 标题
这是 Markdown 内容
下面是一段用LaTeX
书写的内容:
\begin{document}
{\LARGE 这是一个 LaTeX 标题}
\vspace{5mm}
这是 LaTeX 内容
\end{document}
可以看出,Markdown
的基础语法比较简单易懂,可读性也很高。而LaTeX
作为专业性较强的标记语言,需要学习比较复杂的命令,门槛比较高。二者各有利弊,前者专注内容本身,适合博客、文档、日记等轻量的场景。后者更加适合学术论文、书籍出版等需要精细排版的场景。
轻量化
Markdown
的纯文本特性让它可以在任何设备(手机、平板、电脑均可)和编辑器(Typora、VS Code、甚至记事本)中打开,且支持实时渲染,无需编译就可以预览。
版本控制
这是Markdown
最受欢迎的原因之一。由于Markdown
是纯文本,天然支持Git
,可以查看各个版本的差异(diff),非常适合代码审查时追踪内容的变动和修改。
标题
在文本前加入#
和一个空格
,就能生成一个一级标题
。如果你想生成二级标题
,就在文本前加入两个#
,以此类推,最多生成六级标题。
# 这是一级标题
## 这是二级标题
### 这是三级标题
#### 这是四级标题
##### 这是五级标题
###### 最高生成六级标题
效果如下:
注意:在
#
后要加一个空格
,否则会被识别成井号和文本内容了~
#错误示范
# 要记得加空格
效果如下:
文本
斜体
要设置斜体文本,你需要用*
或_
包裹需要设置为斜体的文本。
你也可以直接选中文本后Ctrl I。
*这段文字是斜体的*
_这段文字也是斜体的_
效果如下:
这段文字是斜体的
这段文字也是斜体的
加粗
要加粗文本,你需要用**
或__
包裹需要加粗的文本。
你也可以直接选中文本后Ctrl B。
**这段文字被加粗了**
__这段文字也被加粗了__
效果如下:
这段文字被加粗了
这段文字也被加粗了
删除线
要给一段文本加上删除线,你需要使用~~
包裹需要加上删除线的文本。
你也可以直接选中文本后按住Shift双击~。
~~这段文字被加上删除线了~~
效果如下:
这段文字被加上删除线了
斜体又加粗
要给一段文本设置斜体+加粗,你需要使用***
或___
包裹需要斜体+加粗的文本。
你也可以直接选中文本后Ctrl B+Ctrl I。
***我又斜又粗哟***
___我又斜又粗哟___
效果如下:
我又斜又粗哟
我又斜又粗哟
文本高亮
要给一段文本高亮,你需要使用==
包裹需要高亮的文本。
你也可以直接选中文本后双击=。
==亮起来了==
效果如下:
亮起来了
分割线
要增加一行分割线,你需要使用***
来占据一行,这一行不能有其他元素。
***
效果如下:
HTML代码
如果你还了解一些HTML标签,你还可以通过HTML代码实现一些其他文本效果。
<kbd>Ctrl</kbd>
<u>下划线</u>
<span alt='highlight'>这是另一种高亮</span>
a<sub>b</sub>
a<sup>b</sup>
效果如下:
Ctrl
下划线
这是另一种高亮
ab
ab
注意事项
注意:有的编辑器中
_
可能会失效,建议使用*
省去不必要的麻烦。
列表
无序列表
可以使用*
、+
、-
的其中一个+空格
来表示无序列表。
* 无序列表
* 无序列表
+ 无序列表
+ 无序列表
- 无序列表
- 无序列表
效果如下:
- 无序列表
- 无序列表
-
无序列表
-
无序列表
-
无序列表
- 无序列表
注意:在部分编辑器中,不同的列表前缀符(起始符)之间的行间距会比较大,相同的列表前缀符(起始符)之间的行间距比较小,会导致观感上的差异,所以建议统一使用一种前缀符哦~
有序列表
可以使用数字
+.
+空格
来表示有序列表。
1. 有序列表1
2. 有序列表2
效果如下:
- 有序列表1
- 有序列表2
想要跳出列表,你需要使用两个回车
。一个回车
表示的是列表的新增。如果你在一个列表项目内换行,可以使用Shift
+回车
或者两个空格
+回车
。
1. 有序列表项目1
2. 有序列表项目2
3. 有序列表
项目3
4. 有序列表项目4
跳出列表
效果如下:
- 有序列表项目1
- 有序列表项目2
- 有序列表
项目3 - 有序列表项目4
跳出列表
有序列表编号
有序列表头部的编号最终以列表起始的第一项开始编号。
4. 有序列表4
100. 有序列表100
1. 有序列表1
效果如下:
- 有序列表4
- 有序列表100
- 有序列表1
嵌套列表
可以通过在列表项下缩进实现嵌套列表。
1. 有序列表1
* 有序列表1的子列表1
* 有序列表1的子列表2
2. 有序列表2
效果如下:
- 有序列表1
- 有序列表1的子列表1
- 有序列表1的子列表2
- 有序列表2
任务列表
你可以使用-
、+
、*
的其中一个+空格
+[空格]
+空格
来实现一个任务列表。
使用x
(英文字母)代替中括号中的空格
就可以选中。
- [ ] Markdown
- [x] Java
+ [ ] CSS
+ [x] HTML
* [ ] C#
* [x] Python
效果如下:
- Markdown
- Java
-
CSS
-
HTML
-
C#
- Python
表格的选中效果可以手动修改,鼠标点击即可选中/取消选中。
引用
单条引用
你可以使用>
增加一条引用,使用回车
换行,两次回车
退出。
> 我是一条引用
效果如下:
我是一条引用
嵌套引用
你也可以将引用嵌套使用:
> 我是引用1
> 我是引用2
>> 我是嵌套引用1
>>> 我是嵌套引用2
>>> * 还可以嵌套其他东东
效果如下:
我是引用1
我是引用2
我是嵌套引用1
我是嵌套引用2
- 还可以嵌套其他东东
Github风格警告样式
你可以在在引用的第一行加入你要使用的标题。
> [!TIP]
> 这是Tip样式
> [!NOTE]
> 这是注意样式
> [!IMPORTANT]
> 这是Important样式
> [!WARNING]
> 这是Warning样式
> [!Caution]
> 这是Caution样式
效果如下:
代码块
普通代码块
你可以使用三个连续的`(反引号,在ESC下面)来生成代码块。
三个反引号表示代码块开始,三个反引号表示代码块结束。
你可以在表示开始的反引号行后加上语言名。
效果如下:
#include<stdio.h>
int main(){
printf("hello world!");
return 0;
}
超链接
插入超链接
你可以在文档中插入超链接。
https://blog.kita-ikuyo.cn
效果如下:
https://blog.kita-ikuyo.cn
为超链接命名
直接插入超链接不太美观,我们可以使用[链接名称]
+(链接网址)
来为超链接命名:
[ikuyo的博客](https://blog.kita-ikuyo.cn)
效果如下:
此时你点击链接文字就可以实现跳转到括号中的网址。
图片
你可以使用!
+[图片名称]
+(图片地址)
来插入一张图片。
Markdown是纯文本,所以放入的是图片的地址。如果你要将文档上传到网络上,记得将图片的地址改为网络地址!

效果如下:
表格
Markdown
中创建表格的方法略微比较复杂,包含表头
和表体
两个部分。
一个完整的表格如下所示:
|姓名|性别|学号|
|---|----|---|
|小明|男|001|
|小红|女|002|
效果如下:
姓名 | 性别 | 学号 |
---|---|---|
小明 | 男 | 001 |
小红 | 女 | 002 |
表头
上面代码的前两行我们称为表头
。第一行表头的列需要用|
来分割,表示这是一列的列头。第二行需要添加一行分割线,使用-
来表示。这里的-
没有数量要求,填任意个都可以,不过和表格对齐会比较美观一点。
|列名1|列名2|列名3|
|----|----|----|
效果如下:
列名1 | 列名2 | 列名3 |
---|---|---|
表体
表体的格式和表头的格式一样,可以写很多排,这里不再赘述。
对齐表格内容
Markdown
支持表格内容的对齐。我们可以在分割线列使用冒号调整分割线即可。
|:---|
是左对齐。
|:--:|
是居中对齐。
|---:|
是右对齐。
对于上方的表格,修改一下表头的分割线:
|姓名|性别|学号|
|:--|:--:|--:|
|小明|男|001|
|小红|女|002|
效果如下:
姓名 | 性别 | 学号 |
---|---|---|
小明 | 男 | 001 |
小红 | 女 | 002 |
数学公式
Markdown
还支持一些数学公式语法。
行内公式
你可以在一行内使用$
来包裹数学公式。数学公式的内容会变成你在各大正规学术论文上看到的一样,非常规整。
所有人都知道$1+1=2$。
效果如下:
所有人都知道$1+1=2$。
公式块
你可以像使用代码块一样,使用两个$
表示公式块的开始和结束。
$$
已知5x=20,
那么x=4.
$$
效果如下:
$$
已知5x=20,
那么x=4.
$$
特殊符号
有些特殊数学符号可能需要记忆,这里列出一些常用的:(两个斜杠表示换行)
$$
分数线:\frac{分子}{分母}\\
根号:\sqrt[根指数]{被开方数}\\
上下标:x^{上标}_{下标}\\
积分号:\int^{积分上限}_{积分下限}{被积函数}d{积分变量}\\
极限符号:\lim_{x\rightarrow+\infty}\frac{x}{x+3}\\
向量符号:\vec{a}\\
省略号:\ldots\\
点乘:\cdot\\
累加:\sum\\
常用符号:\alpha\beta\gamma\delta\theta
$$
效果如下:
$$
分数线:\frac{分子}{分母}\
根号:\sqrt[根指数]{被开方数}\
上下标:x^{上标}{下标}\
积分号:\int^{积分上限}{积分下限}{被积函数}d{积分变量}\
极限符号:\lim_{x\rightarrow+\infty}\frac{x}{x+3}\
向量符号:\vec{a}\
省略号:\ldots\
点乘:\cdot\
累加:\sum\
常用符号:\alpha\beta\gamma\delta\theta
$$
有需要可以自行百度。
注释和注脚
注释
你可以用<!-- -->
插入一段注释。
<!--这是一条注释-->
<!--
这是一段
很多行
的
注释
-->
效果如下:
注脚
你可以在文字后用[^编号]
加入注脚。
这是一段话[^1]
这是一段话1
嵌入
嵌入音频
你可以使用<audio src="音频链接"></audio>
来嵌入音频文件。
<audio src="音频链接"></audio>
嵌入视频
你可以使用<video></video>
来嵌入视频文件。
<video width="视频宽度(可以用百分比/像素/数字)" height="视频长度" controls>
<source src="视频地址" type="video/扩展名"></source>
</video>
嵌入外链页面
你可以使用<iframe></iframe>
来嵌入外链页面,例如网易云、bilibili视频,YouTube视频等等。
<iframe frameborder="no" border="0" marginwidth="0" marginheight="0" width=330 height=86 src="//music.163.com/outchain/player?type=2&id=687506&auto=0&height=66"></iframe>
<iframe src="//player.bilibili.com/player.html?bvid=BV1xx411c79H" danmaku width=540 height=720 autoplay=false scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"></iframe>
效果如下:
- 这是一个注脚。 ↩︎