当前正在阅读
Markdown教程
预计阅读时间: 35 分钟
  知识库提供的所有文档均为本站版权所有,禁止任何未经授权的个人或企业发布、传播、售卖本站提供的文档,如经发现,本站有权起诉侵权方并追究法律责任。
image-20240401213036040

Markdown语法讲解

一小时快速上手,程序员必备的Markdown语法,轻松编写规范文档。

什么是Markdown?

Markdown 致力于使阅读和创作文档变得容易。

Markdown是一种轻量级的标记语言,设计初衷是让人们可以使用简单的文本格式来书写和编辑文档,同时具有一定的格式化效果。通过使用Markdown语法,用户可以快速地将纯文本转换为格式化的文档,例如标题、列表、链接、图片等。Markdown语法简单直观,易于学习和使用,逐渐成为了各种平台上书写文档的常用格式,甚至还可以实现Markdown文档对PDF、Word等格式的快速转换。

Markdown的文件通常以.md.markdown为扩展名

image-20240401212138341

我们可以创建一个TXT文本文档,然后将其后缀改为.md即可开始编辑此Markdown文档。

基础语法讲解

在此之前我们需要先安装一个可以编辑Markdown文档的软件,这里推荐:

准备好文档编辑器之后,我们就可以正式开始学习了。

段落和换行

Markdown文档与我们常见的Word文档或是TXT文档类似,只需要直接输入内容,就可以展示了:

image-20240401212755550

当我们需要换行时,在源代码中直接换行相当于空一格,并不是真正的换行:

image-20240401213219346

要实现换行有两种方式:

  • 换行效果: 在上一行的末尾连续添加两个空格,然后再换行。
  • 换段效果: 连续换两行。
image-20240401213420818

加粗和斜体

想要使得文本加粗,我们只需要在需要加粗文本两边添加两个*星号即可:

markdown 复制代码
这是一段文本,而**我是需要加粗的内容**请帮我加一下粗

或是使用两个_下划线,效果相同:

markdown 复制代码
这是一段文本,而__我是需要加粗的内容__请帮我加一下粗

注意: 这里比较推荐使用*号,因为部分编辑器在使用_下划线时无法实现加粗效果。

斜体与加粗类似,我们只需在需要斜体的文本两边添加一个*星号即可:

markdown 复制代码
这是一段文本,而*我是需要斜体的内容*请帮我搞一下

同样也可以使用一个_下划线代替,效果相同:

markdown 复制代码
这是一段文本,而_我是需要斜体的内容_请帮我搞一下

如果需要同时使用加粗和斜体,我们可以直接使用连续的三个*星号或是_下划线:

markdown 复制代码
而你,我的朋友,你才是***真正的英雄***

如果我们只是单纯想在文档中使用这些特殊符号(包括后面遇到的)我们可以使用转义字符,否则某些编辑器会出现格式错乱等问题,只需在前面加上\反斜杠即可:

markdown 复制代码
我是转义的 \* 符号,可以直接展示

删除线和下划线

想要为文本添加删除线,我们只需要在需要加删除线的文本两边添加两个~波浪线即可:

markdown 复制代码
这是一段普通的文本,~~而我是需要删除的内容~~

下划线在Markdown原生语法中没有提供对应的符号,我们只能借助HTML代码来实现,Markdown支持在文本中嵌入HTML标签,包括其样式,我们会在后面详细介绍:

image-20240401214710763

分割线

分割线的创建非常简单,只需在单独一行使用连续三个及以上的*星号即可:

image-20240401214833735

同样的,我们使用下划线也可以实现:

image-20240401214917822

在连续三个字符之间也可以存在空格:

markdown 复制代码
_ _ _  连续三个带空格分隔的下划线
* * *  连续三个带空格分隔的星号
- - -  连续三个带空格分隔的减号

效果与上面一样,都可以实现分割线效果。

标题

很多情况下我们都需要一个标题来代表当前这块文本的内容核心,以便读者阅读,Markdown中也可以创建多种大小的标题,就像Word文档那样,并且非常简单,我们只需要使用#井号即可创建标题:

image-20240401215549080

标题分为多种等级,不同的等级表示不同级别下的标题,我们可以通过连续添加多个#井号来表示多个不同等级的标题,但是最多只支持到六级标题:

markdown 复制代码
# 我是一级标题
## 我是二级标题
### 我是三级标题
#### 我是四级标题
##### 我是五级标题
###### 我是六级标题(最多六级)
image-20240401215903143

除了使用#井号创建之外,一级标题和二级标题也可以使用其他符号快速创建,一级标题可以使用=等号快速创建,只需要在标题文本的下方添加即可:

image-20240401220133956

同样的,二级标题可以使用-减号快速创建,也是在下方添加:

image-20240401220416350

列表和勾选框

列表在我们的日常生活中起到了非常重要的作用,比如我们的日常计划、工作任务、购物清单等,都需要用到列表来展示,这样往往更加清晰直观,在Markdown中也可以很轻松地创建列表。

要创建一个无序列表,我们只需要使用*星号作为前缀,注意需要空格:

image-20240401221114169

除了星号之外,我们也可以使用加号 + 或是减号 -来代替,效果完全相同。注意,这三种符号在一个列表中只能统一使用同一种,不能混用,如果出现混用的情况,会被认为是上一个列表下的一个新的列表,比如下面就被认为是三个列表了:

image-20240401221227768

要创建一个带数字的有序列表,我们可以使用数字的123来表示,首先输入数字然后添加.小数点作为前缀,注意添加空格:

image-20240401221807396

在列表中换行同样需要像普通文本那样,如果只是单纯换行编写,会被认为是一个空格:

image-20240401225122783

如果是在末尾添加两个空格再换行,会被认为是在列表项内换行:

image-20240401225203168

只有两个连续的换行才能脱离列表,作为新的段落开始编写:

image-20240401225233609

列表支持多个层级嵌套,我们可以在一级列表下创建二级列表,要表示二级列表,我们可以在前面添加两个或四个空格(也可以是一个TAB缩进),表示此列表是上一个列表的子级:

image-20240401222110941

我们也可以将列表变为勾选框的形式,来表示我们的任务完成情况,只需要添加一个方括号即可:

markdown 复制代码
* [ ] 我是未完成的任务
* [x] 我是已完成的任务
image-20240401222649780

在方括号中间填写空格表示未完成,填写大写或小写的x表示已完成。

代码块

要创建一个代码块,只需要在本行的最前面添加四个空格即可,注意代码块要与上面的其他文本隔开一行:

image-20240401223017312

只不过这样非常不方便,不仅要空出四格还得专门隔一行出来,建议各位小伙伴使用下面的方式创建代码块,更加简单,我们也可以使用三个连续的 ` 符号来添加代码块,注意前后都需要添加,囊括起来:

image-20240401223927003

在上面的三个 ` 后可以添加语言名称,比如我们这里添加的是Java代码,那就添加java名称上去,表示这个代码块是一段Java代码,便于Markdown编辑器分辨代码并为其添加相应的高亮展示。

注意: 代码块中的所有内容都会被认为是代码,不可以嵌套其他Markdown语法。

除了编写多行代码之外,如果只是加单编写一个行内展示的代码,比如方法名称之类的,我们可以使用单个 ` 囊括行内代码块部分:

image-20240401224507210

引用

当我们引用他人文章内容时,往往需要特别标注此部分,而Markdown为我们提供了更加方便的文本引用块,我们只需要在最前面添加>大于符号即可表示后面的文本为引用文本,注意空格:

image-20240401224807492

被引用的文本会被一个特殊的块包裹起来,类似于代码块,反正意思到位就行了。

在引用块内换行同样需要像普通文本那样,如果只是单纯换行编写,会被认为是一个空格:

image-20240401225417581

如果是在末尾添加两个空格再换行,会被认为是在引用块内换行:

image-20240401225435435

只有两个连续的换行才能脱离引用块,作为新的段落开始编写:

image-20240401225506218

对于多行内容的引用,我们更推荐每一行的前面都添加>大于符号,效果与上面是完全一样的,并且看上去会更加直观:

image-20240401225637460

在引用块内,我们也可以嵌套其他Markdown内容,比如列表或是代码块:

image-20240401230153697

引用还能继续嵌套引用,甚至很多层,只需要连续添加<大于符号前缀即可,注意空格:

image-20240401230415872

链接和图片

我们可以像Word中那样,在Markdown文档中插入超链接,只需要使用[]()组合就能完成,具体语法格式为:

markdown 复制代码
[链接文本](链接地址)

我们可以像下面这样编写:

image-20240401230757990

这样,指定的文本会以超链接的形式存在于文档中,用户可以直接点击跳转,非常方便。

有些时候可能我们的文档中有很多链接,甚至还有重复,此时一个一个编写相当费时间,而且源代码中满屏的链接显得相当杂乱,我们可以利用变量来优化这种情况,变量可以在文章的末尾再确定值:

markdown 复制代码
[链接文本][变量]

[变量]: https://www.baidu.com

等价于:

markdown 复制代码
[链接文本](https://www.baidu.com)
image-20240401232319677

我们接着来看如何向文章中插入图片,其实插入图片非常简单,与链接类似,语法如下:

markdown 复制代码
![图片描述](图片地址 "图片名称,可选")

其实就是链接的写法前面多加了一个感叹号。由于Markdown文档是纯文本格式,无法像Word那样真的放一张图片进去,因此我们只能使用本地图片地址或是网络图片地址,比如插入一张网络图片:

image-20240401232727380

这里推荐各位小伙伴使用网络图片,尤其是需要分享文档给其他小伙伴或是在不同电脑上办公的,本地图片必须一起打包带走,非常麻烦,而网络图片无论何时何地都可以访问,直接一步到位,当前,前提是选好一个合适的图床。

图片插入后,大小由编辑器决定,一般是占满宽度,我们无法主动修改图片的大小。

图片和链接一样,都可以使用变量:

image-20240401233027490

脚注

在Word中我们经常会用到脚注,尤其是论文中,经常会在某个词语的右上角标上123来表示这个词语在文档的底部有注释,如果不理解可以去页脚查看注释中的内容。

在Markdown中也可以像这样编写脚注(部分编辑器不支持)

markdown 复制代码
姐,遇到PHP[^1]程序员就嫁了吧。
[^1]:世界上最好的语言。
image-20240402000054253

鼠标移动上去时也会展示脚注内容。

表格

在Markdown中也支持创建一个表格,使得数据的展示更加整齐有序。

不过这个语法可能稍微有一点点复杂,首先我们来看一个表格的结构,表格分为表头和表体,其中表头就是最顶上一排的,用于表示当前列的数据类型,比如年龄、性别等,而表体就是每一行数据,我们来看看如何在Markdown中编写:

markdown 复制代码
| 名称 | 年龄 | 性别 |
| --- | --- | --- |

最上一排就是表头,需要在左右使用|表示这是一个表格,同时,下方需要添加分割线,分割线使用-减号表示,写一个或多个都可以,推荐与表的宽度一致,更加美观。这样,就可以顺利展示为一个表格了:

image-20240401233838765

接着我们来编写表体,格式与表头是一样的,并且可以一直往下写:

image-20240401234008669

同时Markdown的表格支持内容的对齐调整,只需要使用:冒号调整分割线即可:

markdown 复制代码
| 名称 | 年龄 | 性别 |
| :--- | :---: | ---: |

其中:

  • :--- 为左对齐
  • ---: 为右对齐
  • :---: 为居中对齐

比如我们希望内容居右对齐:

image-20240401234423105

表格中也可以嵌套使用诸如加粗、斜体、行内代码块这类Markdown语法。

HTML标签

学完最基本的语法后,可能会有小伙伴觉得自定义度不够,比如无法修改字体颜色、无法自定义图片的大小等。我们也可以在Markdown文本中使用部分受支持的HTML标签,让文档内容更加个性化。

比如我们可以嵌入一个img标签,并编写对应的css行内样式,来让图片大小可以自定义:

image-20240401234911264

还有我们前面使用的换行、分割线、下划线等,都可以使用HTML提供的标签来完成:

image-20240401235017487

只不过,如果Markdown语法本身就支持对应的功能,我们还是尽量使用Markdown原生的语法,以免降低可读性。

我们还可以利用css修改文本的颜色等,自定义度相当高:

image-20240401235152308

各位小伙伴还可以试试看内嵌iframe页面,实现B站视频播放哦~

其他扩展语法

除了我们上面学习的语法外,还有一些扩展语法可以使用(部分编辑器不支持,Typora需要在设置中开启才能支持)

首先是文本高亮,使用两个=等号囊括:

markdown 复制代码
==我是高亮部分==

此时文字会呈现为高亮状态,具体怎么高亮根据不同的编辑器可能效果会不一样。

文本的上标和下标分别可以使用单个^~囊括来实现:

markdown 复制代码
我是文本^我是上标^

我是文本~我是下标~

数学公式语法

除了基础的文档格式Markdown可以支持外,它还可以编写数学公式,更加直观和规范地展示,理科生直接爱了。

注意: 使用Typora的小伙伴需要在设置中开启内联公式支持。

公式块

需要编写数学公式,我们同样需要在特定的块中编写,公式块使用$美元符表示。多行公式使用连续的两个美元符:

markdown 复制代码
$$
我是公式
$$

如果只想在行内编写,一行内容只需要使用一个美元符囊括即可:

markdown 复制代码
公式为:$ x = 17 + y $ 牛逼吧

公式块中展示的内容会自动变为标准的论文公式格式,并且字体也是非常标准的,强烈推荐各位小伙伴使用Markdown写数学公式。

特殊数学符号

在公式块中,大部分数学符号都可以通过键盘直接输入,但是还是有一些符号无法直接通过键盘输入,比如乘号、除号、根号等,我们需要借助一些特殊的代码来替代:

代码 符号 描述
\not= \not= 不等于
\approx \approx 约等于
\times \times 乘号
\div \div 除号
\leq \leq 小于等于
\geq \geq 大于等于
\pm \pm 正负号
\sum \sum 求和符号(累加)
\prod \prod 累乘
\coprod \coprod 累除
\overline{a + b + c} \overline{a + b + c} 平均值

数学中常见特殊字符:

代码 符号 代码 符号
\alpha \alpha \beta \beta
\gamma \gamma \delta \delta
\epsilon \epsilon \eta \eta
\theta \theta \pi \pi
\omega \omega \rho \rho
\sigma \sigma \mu \mu

还有我们数学中常见的三角函数相关:

代码 符号 描述
\sin \sin 正弦
\cos \cos 余弦
\tan \tan 正切
\cot \cot 余切
\sec \sec 正割
\csc \csc 余割
\circ \circ

积分和求导相关:

代码 符号 描述
\infty \infty 无穷
\int \int 定积分
\iint \iint 双重积分
\iiint \iiint 三重积分
\oint \oint 曲线积分
x\prime x\prime 求导
\lim \lim 极限

集合相关:

代码 符号 描述
\emptyset \emptyset 空集
\in \in 属于
\notin \notin 不属于
\supset \supset 真包含
\supseteq \supseteq 包含
\bigcap \bigcap 交集
\bigcup \bigcup 并集

对数函数相关:

代码 符号 描述
\log \log 对数函数
\ln \ln 以e为底的对数函数
\lg \lg 以10为底的对数函数

分数

分数使用\farc来表示,具体格式如下:

markdown 复制代码
$ \frac{分子}{分母} $
image-20240402004527479

开方

开方使用\sqrt来表示,具体格式如下:

markdown 复制代码
$\sqrt{4}$
image-20240402004631442

如果需要修改根号上方数值,可以添加中括号:

复制代码
$\sqrt[3]{8}$
image-20240402004731104

上下标

在公式块中的上下标与Markdown中的不同,语法也不一样,其中^表示上标, _ 表示下标:

markdown 复制代码
$ x_下标 $
$ x^上标 $
$ x^上标_下标 $
image-20240402004935329

如果上标或下标内容多于一个字符,需要使用 {} 括起来,包括后续的其他代码如果出现只有一个字符生效的情况下,考虑使用花括号囊括全部内容:

markdown 复制代码
$ x_{下标} $
$ x^{上标} $
$ x^{上标}_{下标} $

积分和极限

积分非常简单,直接使用上下标即可指定范围,后续的内容可以直接向后编写,会自动居中摆放:

markdown 复制代码
$ \int_1^2xdx $
image-20240402005153195

极限与积分类似,同样使用下标即可:

markdown 复制代码
$ \lim_{n\rightarrow+\infty}\frac{1}{n + 1} $
image-20240402005402720

其他符号

向量符号:

markdown 复制代码
$ \vec{a} $
image-20240402005634135

省略号:

markdown 复制代码
$ \cdots $   居中省略号
$ \ldots $   靠底部的省略号
image-20240402005852027

点乘号:

markdown 复制代码
$ \cdot $
image-20240402010021085

累加:

markdown 复制代码
$ \sum_1^n $
image-20240402010114211
大纲 (于 2025年1月1日 更新)
正在加载页面,请稍后...