Markdown语法基础

本文包含的Markdown语法有:

  • 标题
  • 文字
  • 粗斜体
  • 划线
  • 脚注
  • 段落
  • 换行
  • 分隔符
  • 列表
  • 区块引用
  • 代码
  • 链接
  • 图片
  • 表格
  • 目录
  • 注释
  • 支持的HTML元素
  • 转义字符

标题

在Markdown 中标题可以使用两种方式来

  • 一种是用 =-
  • 一种是用 #

1. 使用=-

至少用三个 =-

代码示例:

一级标题
===
二级标题
---

2. 使用#

在想要设置为标题的文字前面加#来表示

  • #后面要加空格
  • 一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。

代码示例:

# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

文字

粗斜体

在MarkDown里,粗、斜体有两种写法,一种是用 * ,一种是用 _ 包裹住你要改变的内容

*_ 与内容要紧贴着,之前不能用空格

  • 一个*或一个_ 是斜体
  • 两个*或两个_ 是粗体
  • 三个*或三个_ 是粗斜体

代码示例:

*斜体文本*          _斜体文本_
**粗体文本**        __粗体文本__
***粗斜体文本***    ___粗斜体文本___

示例效果:


斜体文本
粗体文本
粗斜体文本


划线

在MarkDown中没有上划线和下划线的自身语法,只有删除线(中划线)的语法,但可以通过其他方式实现

  • 上划线可以通过Latex公式实现
  • 删除线(中划线)
  • 下划线使用HTML语法或 Latex公式 实现

代码示例:


$\overline{\text{上划线}}$

~~删除线~~


$\underline{\text{下划线}}$


下划线

示例效果:



删除线



下划线


脚注

在MarkDown中支持添加脚注方式来对文本进行补充说明。

在需要添加注脚的文字后加上脚注名: [^注脚名] 。 然后在文本的任意位置(一般在最后)添加脚注:

脚注自动生成在页面最最后面,在页面末尾可以看到,并且脚注后方的链接可以直接跳转回到加脚注的地方。

代码示例:

脚注示例,这是第一个脚注[^注脚名1],这是第二个脚注[^注脚名2],这是第三个脚注[^注脚名3]
[^注脚名1]:我是脚注一.
[^注脚名2]:我是脚注二.
[^注脚名3]:我是脚注三.

示例效果:


脚注示例,这是第一个脚注[1],这是第二个脚注[2],这是第三个脚注[3]


段落

换行

在Markdown 段落没有特殊的格式

  • 当需要内容换行时,使用两个以上空格加上回车。
  • 当需要生成新的段落,只需空出一行即可

多个空行只生效一个空行

代码示例:

上一行内容
下一行内容

上一个段落  

下一个段落

示例效果:


上一行内容
下一行内容

上一个段落

下一个段落


分隔符

在Markdown 分隔符需要使用 *-_来建立

  • *-_都需要三个及其以上
  • *-_可以在中间插入空格,但不能在行内存在其他内容
  • *-_,当前后都有段落时,请空出一行

代码示例:


---

- - -

___

_ _ _

***

* * *

示例效果:









列表

无序列表

列表内容前可使用 *-+ + 空格来表示无序列表

代码示例:

- 无序列表项,使用 `-` + `空格`
+ 无序列表项,使用 `+` + `空格`
* 无序列表项,使用 `*` + `空格`

示例效果:


  • 无序列表项,使用 - + 空格
  • 无序列表项,使用 + + 空格
  • 无序列表项,使用 * + 空格

有序列表

列表内容前可使用 数字+空格来表示有序列表

有序列表会自动给你的列表项按照阿拉伯数字顺序添加数字

代码示例:

1. 第一项
2. 第二项
4. 第三项

示例效果:


  1. 第一项
  2. 第二项
  3. 第三项

列表嵌套

子列表中的列表项前添加四个空格

代码示例:

1. 有序列表第一项 A
    - A 的第一项无序列表子项 a1
        1. a1 的第一项有序列表子项 a1a
        1. a1 的第二项有序列表子项 a1b
    - A 的第二项无序列表子项 a2
2. 有序列表第一项 B
    B 的第一行文本内容
    B 的第二行文本内容

示例效果:


  1. 有序列表第一项 A
    • A 的第一项无序列表子项 a1
      1. a1 的第一项有序列表子项 a1a
      2. a1 的第二项有序列表子项 a1b
    • A 的第二项无序列表子项 a2
  2. 有序列表第一项 B
    B 的第一行文本内容
    B 的第二行文本内容

区块引用

简单区块引用

在Markdown中使用 > + 空格 来表示区块引用

当需要换行时,可以在前方不加 >
需要新板块可以空出一行

代码示例:

> 换行可以不加 `>`
 我前面没有 `>`

> 如果需要新的一块,块引用则空出一行重新在文本前方使用 `>`

示例效果:


换行可以不加 >
我前面没有 >

如果需要新的一块,块引用则空出一行重新在文本前方使用 >


区块引用的嵌套

在Markdown中,区块引用也可以进行嵌套,只需使用多个 >

嵌套区块引用使用 > 的个数,代表着嵌套的深度
嵌套区块引用中 > 之间可以不用空格隔开

代码示例:

>> 第二层

> 第一层
> > 第二层

> 第一层
> > > 第三层

示例效果:


第二层

第一层

第二层

第一层

第三层


区块引用与列表

在Markdown中,列表里面可以使用区块引用,区块引用中也可以使用列表

列表还可以嵌套列表,区块引用还可以嵌套区块(本章只做简单介绍)

  • 列表中使用区块引用

代码示例:

1. 有序列表 A
    > 引用区块
    1. 有序列表 Aa
        > 引用区块
    > 区块
2. 有序列表 B 

示例效果:


  1. 有序列表 A

    引用区块
    1. 有序列表 Aa
    > 引用区块
    > 区块

  2. 有序列表 B

  • 区块引用中使用列表

代码示例:

> - 这序列表 A
> - 无序列表 B
>     * 子列表需要在 `>` 后面加入四个空格 

示例效果:


  • 这序列表 A
  • 无序列表 B
    • 子列表需要在 > 后面加入四个空格

代码

建议有输出内容的 Shell 命令前加上$,不会把命令和输出的内容混淆

  • 代码段

代码段可以使用一对反引号` `包裹住

代码示例:

文本段中使用`代码段`,就用反引号包裹住

示例效果:


文本段中使用代码段,就用反引号包裹住


  • 代码区块

      - 每行文字前加4个空格
      - 每行文字前加1个tab键
      - 使用三个反引号```包裹一段代码,在第一个```后面可以指定代码语言,显示代码高亮,也可以不指定语言
    

使用三个引号包裹代码块,引号是放在最前方

代码示例:


    我是使用4个空格,形成的代码块
    我是使用一个1个tab键,形成的恶代码块

    ```markdown
    markdown代码  
    # 标题
    1. 有序列表
    ```

示例效果:


我是使用4个空格,形成的代码块
我是使用一个1个tab键,形成的恶代码块
markdown代码  
# 标题
1. 有序列表

链接

在Markdown中,链接可以使用到变量

  • 简单链接

    • [链接名称](链接网址)
    • [链接名称](链接网址 "文字说明")
    • <链接网址>

文字说明可以通过鼠标悬浮链接上查看

代码示例:

百度[百度](https://www.baidu.com/)
百度[百度](https://www.baidu.com/ "百度搜索")
百度

示例效果:


百度百度
百度百度
百度https://www.baidu.com/


  • 高级链接

可以使用变量来调用链接

使用变量要记得在文档的结尾为变量赋值

代码示例:

[百度][1]
[谷歌][2]

然后在文档的结尾为变量赋值(网址)

[1]: https://www.baidu.com/
[2]: http://www.google.com/

示例效果:


百度
谷歌

然后在文档的结尾为变量赋值(网址)


图片

跟链接的方法区别在于前面加了个感叹号 !

  • [图片上传失败...(image-caa9b7-1632883183326)]
  • [图片上传失败...(image-4d432f-1632883183327)]
  • 你也可以像链接一样使用变量[百度][1].

然后在文档的结尾位变量赋值(网址)

__

代码示例:


![百度logo]](https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png)

![百度](https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png "百度logo")

[百度][1]

[1]: https://www.baidu.com/

示例效果:


百度logo
百度

百度


表格

在Markdown中 制作表格使用 | 来分隔不同的单元格,使用 - 来分隔表头和其他行。

表格对齐放方式

  • -: 设置内容和标题栏居右对齐。
  • :- 设置内容和标题栏居左对齐。
  • :-: 设置内容和标题栏居中对齐。

表格对齐都是写在表头下面一行的 ----

代码示例:

|  表头一   | 靠左对齐  |  居中对其  |   靠右对齐  |
| :----- | :-----| ----: | :----: |
| 单元格1 | 单元格2 | 单元格3 | 单元格4 |
| 单元格11 | 单元格22 | 单元格33 | 单元格44 |
| 单元格111 | 单元格222 | 单元格333 | 单元格444 |
| 单元格1111 | 单元格2222 | 单元格3333 | 单元格4444 |

示例效果:


表头一 靠左对齐 居中对其 靠右对齐
单元格1 单元格2 单元格3 单元格4
单元格11 单元格22 单元格33 单元格44
单元格111 单元格222 单元格333 单元格444
单元格1111 单元格2222 单元格3333 单元格4444

目录

在需要目录出现的地方(一般在文章一开始)放置一个标记,这样会自动生成一个嵌套的包含所有标题的列表。

如果对应的各级标题中有空格 , 在锚点链接中用-代替空格

代码示例:

本文目录示例
- [标题](#标题)
- [文字](#文字)
    - [粗斜体](#粗斜体)
    - [划线](#划线)
    - [脚注](#脚注)
- [段落](#段落)
    - [换行](#换行)
    - [分隔符](#分隔符)
- [列表](#列表)
    - [无序列表](#无序列表)
    - [有序列表](#有序列表)
    - [列表嵌套](#列表嵌套)
- [区块引用](#区块引用)
    - [简单区块引用](#简单区块引用)
    - [区块引用的嵌套](#区块引用的嵌套)
    - [区块引用与列表](#区块引用与列表)
- [代码](#代码)
- [链接](#链接)
- [图片](#图片)
- [表格](#表格)
- [目录](#目录)
- [高级技巧](#高级技巧)
    - [注释](#注释)
    - [支持的html元素](#支持的html元素)
    - [转义字符](#转义字符)

示例效果:


本文目录示例

  • 标题
  • 文字
    • 粗斜体
    • 划线
    • 脚注
  • 段落
    • 换行
    • 分隔符
  • 列表
    • 无序列表
    • 有序列表
    • 列表嵌套
  • 区块引用
    • 简单区块引用
    • 区块引用的嵌套
    • 区块引用与列表
  • 代码
  • 链接
  • 图片
  • 表格
  • 目录
  • 高级技巧
    • 注释
    • 支持的html元素
    • 转义字符

高级技巧

注释

在Markdown中,注释可以自定义

  • 可以使用html语法注释``
  • 可以使用*[·-·]:注释内容格式进行注释,其中[]中的内容可以自定义

这些注释在代码段中无效,代码块中注释是根据所指定语言进行注释

代码示例:


[comment]: <> (注释,不会显示)
[//]: <> (注释,不会显示)
[//]: # (注释,不会显示)
*[^_^]:注释,不会显示
*[@_@]:注释,不会显示

示例效果:


下面写了注释,但不会被解析渲染出现,不同解析器支持的结果不同。

[comment]: <> (注释,不会显示)
[//]: <> (注释,不会显示)
[//]: # (注释,不会显示)
*[_]:注释,不会显示
*[@_@]:注释,不会显示


支持的html元素

目前支持的 HTML 元素有:

不在 Markdown 涵盖范围之内的标签,都可以直接在文档里面用 HTML 撰写。

代码示例:

tab粗体
斜体
也是斜体
文本上标
文本下标
换行
下一行
点击查看 这里是折叠的内容
还有很多其他html标签,这里就不一一列举了...

示例效果:


tab
粗体
斜体
也是斜体
文本上标
文本下标
换行
下一行


点击查看
这里是折叠的内容

还有很多其他html标签,这里就不一一列举了...


转义字符

在Markdown 中使用了很多特殊符号,如果需要显示特定的符号则需要使用转义字符。可以使用反斜杠\来转义

Markdown反斜杠转义表

转义字符 中文名称 英文名称
\ 反斜杠 backslash
` 反引号 backtick
* 星号 asterisk
_ 下划线 underscore
{} 大括号 curly braces
[] 方括号 square brackets
() 括弧 parentheses
# 井号 hash mark
+ 加号 plus sign
- 减号(连字符) minus sign (hyphen)
. 小数点 dot
! 感叹号 exclamation mark

代码示例:

\\   反斜线
\`   反引号
\*   星号
\_   下划线
\{}  花括号
\[]  方括号
\()  小括号
\#   井字号
\+   加号
\-   减号
\.   英文句点
\!   感叹号

示例效果:


\ 反斜线
` 反引号
* 星号
_ 下划线
{} 花括号
[] 方括号
() 小括号
# 井字号
+ 加号
- 减号
. 英文句点
! 感叹号



  1. 我是脚注一,后面可以返回到加脚注位置的链接。 ↩

  2. 我是脚注二,后面可以返回到加脚注位置的链接。 ↩

  3. 我是脚注三,后面可以返回到加脚注位置的链接。 ↩

你可能感兴趣的:(Markdown语法基础)