Markdown的基本语法

1 标题

使用#号标记,可以表示1-6级标题, 随#的个数递增,一级标题字号最大,六级标题字号最小。
代码如下:

1
2
3
4
5
6
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

效果:

一级标题

二级标题

三级标题

四级标题

五级标题
六级标题

2 字体

星号与下划线都可以,单是斜体,双是粗体,三是粗斜体

代码 效果
*这是斜体* 这是斜体
_这是斜体_ 这是斜体
**这是粗体** 这是粗体
__这是粗体__ 这是粗体
***这是粗斜体*** 这是粗斜体
___这是粗斜体___ 这是粗斜体

3 换行

Markdown换行的方式有很多种:

  • 直接在一句话后敲两个空格
  • 两句话之间加一个空行
  • 如果你在编辑的时候,想让一行文字在显示的时候换行,就在中间加<br/>

4 引用

Markdown 中引用通过符号 > 来实现。> 符号后的空格,可有可无。
在引用的区块内,允许换行存在,换行并不会终止引用的区块。如果要结束引用,需要一行空白行,来结束引用的区块。
代码:

1
>这是一个引用

此外,引用还可以嵌套使用:

1
2
3
>这是一个引用:
>>这是一个引用的引用
>>>这是一个引用的引用的引用

效果:

这是一个引用:

这是一个引用的引用

这是一个引用的引用的引用

5 链接

Markdown中插入链接的使用方式是:
代码:

1
2
[链接名称](链接地址)
<链接地址>

6 图片

1
![图片描述,可写可不写,但是中括号要有](图片地址,本地链接或者URL地址。)
1
![图片描述,可写可不写,但是中括号要有](图片地址,本地链接或者URL地址#pic_center空格=长x宽)

7 列表

列表分为有序列表和无序列表

  • 无序列表,使用*+-,再加一个空格作为列表的标记
  • 有序列表,使用数字并加上.号,再加一个空格作为列表的标记
    代码:
1
2
3
4
5
6
7
* 无序列表 1
+ 无序列表 2
- 无序列表 3

1. 有序列表 1
2. 有序列表 2
3. 有序列表 3

效果:

  • 无序列表 1
  • 无序列表 2
  • 无序列表 3
  1. 有序列表 1
  2. 有序列表 2
  3. 有序列表 3

如果想要控制列表的层级,则需要在列表符号前使用Tab
代码:

1
2
3
4
5
6
7
8
9
+ 无序列表 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.1
  2. 有序列表 2
    2.1 有序列表2.1

8 分割线

Markdown中给出了多种分割线的样式,我们可以使用分割线让文章结构更加的清晰。
分割线的使用,可以在一行中用三个-or*来建立一个分割线,但是注意:在分割线的上面空一行!!!

代码:

1
2
3
4
5
6
分割线:

---
***
- - -
* * *

注意:写分割线前,要空一行之后写,否则会导致前一行字体放大。

效果:

分割线:





9 删除线

删除线的的使用,可以在要添加删除线的文字前后添加两个~
代码:

1
~~这是要被删除的文字~~

效果:

这是要被删除的文字

10 下划线

下划线的使用和html中类似,在需要添加下划线的文字首尾添加<u>文本</u>
代码:

1
<u>这行文字已被添加下划线</u>

效果:

这行文字已被添加下划线

11 代码块

Markdown中代码块有两种:
如果在一行内需要引用代码,只需要用反引号`引起来就好了。
代码:

1
`Hello` World.

效果:

Hello World.

如果是在一个块内需要引用代码,则在需要引用的代码块的前一行和后一行使用三个反引号,同时在前一个反引号后写入代码的语言。

1
2
3
4
5
'''c
#incluede <stdio.h>
int main{}
return 0;
'''

支持以下语言:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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

12 表格

表格使用|来分割不同的单元格,使用-来分隔表头和其他行

  • :-:将表头及单元格内容左对齐
  • -::将表头及单元格内容右对齐
  • :-::将表头及单元格内容居中

代码:

1
2
3
4
5
| 项目        | 价格   |  数量  |
| -------- | -----: | :----: |
| 计算机 | \$1600 | 5 |
| 手机 | \$12 | 12 |
| 管线 | \$1 | 234 |

效果:

项目 价格 数量
计算机 $1600 5
手机 $12 12
管线 $1 234

13 脚注

脚注是对文本的备注,我们时长在论文中看到脚注,在Markdown中的使用方法
代码:

1
2
3
4
使用 Markdown[^1]可以效率的书写文档, 直接转换成 HTML[^2], 你可以使用 Typora[^T] 编辑器进行书写。
[^1]:Markdown是一种纯文本标记语言
[^2]:HyperText Markup Language 超文本标记语言
[^T]:NEW WAY TO READ & WRITE MARKDOWN.

效果:

使用 Markdown^1可以效率的书写文档, 直接转换成 HTML[^2], 你可以使用 Typora[^T] 编辑器进行书写。

[^2]: HyperText Markup Language 超文本标记语言
[^T]: NEW WAY TO READ & WRITE MARKDOWN.

14 特殊符号

对于Markdown中的语法符号,前面家反斜线\即可以显示符号本身。
代码:

1
2
3
4
5
6
\\
\*
\_
\+
\.
等等

效果:

\
*
_
+
.

Markdown的高级用法

1 制作待办事项

我们可以使用Markdown来制作一个待办事项,格式为、-[] 表示未完成;-[x]表示已完成
代码:

1
2
3
4
5
- [ ] 支持以 PDF 格式导出文稿
- [ ] 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
- [x] 新增 Todo 列表功能
- [x] 修复 LaTex 公式渲染问题
- [x] 新增 LaTex 公式编号功能

效果:

  • 支持以 PDF 格式导出文稿
  • 改进 Cmd 渲染算法,使用局部渲染技术提高渲染效率
  • 新增 Todo 列表功能
  • 修复 LaTex 公式渲染问题
  • 新增 LaTex 公式编号功能

2 书写公式

Markdown支持书写公式,例如书写一个质能守恒公式。
$$表示整行公式
代码:

1
$$E=mc^2$$

效果:
$$
E = mc^2
$$

3 Html

Markdown支持原生HTML语法,譬如,你可以用 Html 写一个纵跨两行的表格:
代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
<table>
<tr>
<th rowspan="2">值班人员</th>
<th>星期一</th>
<th>星期二</th>
<th>星期三</th>
</tr>
<tr>
<td>李强</td>
<td>张明</td>
<td>王平</td>
</tr>
</table>

效果:

值班人员 星期一 星期二 星期三
李强 张明 王平

也可以实现对字体格式的改变

代码:

1
<font face="楷体" color=#00ffff size=5>改变文字格式</font>

效果:

改变文字格式