Markdown
1. Markdown介绍
Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯(英语:John Gruber)。 它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档。这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。 由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,许多网站都广泛使用Markdown来撰写帮助文档或是用于论坛上发表消息。 如GitHub、Reddit、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge、简书等,甚至还能被使用来撰写电子书。
2. Markdown的基础语法
1)markdown标题
一级标题对应一个#号;
二级标题对应两个##号;
以此类推,共六级标题
如下:
# 一级标题 ##二级标题 ###三级标题 ####四级标题 #####五级标题 ######六级标题
2)markdown文本
斜体文本:可以在需要标注为斜体文本前及斜体文本结尾,输入一个星号 * 或者一个下划线 _;
粗体文本:可以在需要标注为粗体文本前及粗体文本结尾,输入两个星号 ** 或者两个下划线 _;
粗斜体文本:可以在需要标注为粗体文本前及粗体文本结尾,输入三个星号***或者三个下划线_;
如下:
*斜体文本* _斜体文本_ **粗体文本** __粗体文本__ ***粗斜体文本*** ___粗斜体文本___
3)markdown列表
无序列表:使用星号( * )、加号(+)或是减号(-),再加一个空格作为列表标记 //空格起到缩进作用;
有序列表:使用数字并加上 . 号(英语的句号),再加上一个空格;
如下:
* 无序列表 1 + 无序列表 2 - 无序列表 3 1. 有序列表 1 2. 有序列表 2 3. 有序列表 3
如果要控制列表的层级,则需要在符号 - 前使用 tab
如下:
- 无序列表 1 - 无序列表 2 - 无序列表 2.1 - 无序列表 2.2
4)markdown链接
[链接名称](链接地址) 或者 <链接地址>
等
5)markdown引用
引用的格式是 >加文字,或者加一个空格再加文字
如下:
> 文字;
还可以嵌套,一个 > 符号在第一层,两个 > 符号 是第二层,以此类推,
如下
> 文字; >>文字; >>>文字;
6)markdown删除线
删除线,在需要删除的文字前后各使用两个~,
如下:
~~文字删除~~
7)markdown下划线
下划线,在需要添加下划线的文字首部和尾部加上 <u>文本</u>
如下:
<u>文字添加下划线</u>
8)markdown分割线
使用三个 -或者 * 来建立一个分割线,同时在分割线的上面空一行,(若不留空格,就会把第一行文本放大)
如下:
文本 --- 文本 或者 *** * * * ***** - - -
9)markdown表格
表格使用 | 来分隔不同的单元格,使用 - 来分隔表头和其他行,
:-
:将表头及单元格的内容左对齐;
-:
:将表头及单元格的内容左对齐;
:-:
:将表头及单元格的内容居中对齐;
| 姓名 | 年龄 | 职位 | | :----- | :--: | -------: |
10)markdown图片
插入图片,如果是行内图片 则无图列,否则有图列
支持 jpg、png、gif等,注:仅支持 https 的图片,图片粘贴到网页编辑器后,会自动上传到服务器;如果是本地编辑器,需要有一个相对路径用来存储保存的图片。
如下:

11)markdown脚注
脚注是对文本的备注说明,注意脚注与链接的区别
如下:
链接:[文字](链接) 脚注:[文字](脚注解释 "脚注名字")
12)markdown代码块
在一个行内需要用代码,用反引号引起来,
如下:
Use the `printf()` function.
如果是在一个块内需要引用代码,则在需要高亮的代码块的前一行及后一行使用三个反引号,同时 第一行反引号后面表示代码块所使用的语言,
如下:
// FileName: HelloWorld.cpp #include<iostream> int main(){ printf("HelloWorld"); }
3.Markdown工具
marktext、typora、notable、vnote、markdown nice 、md2all等。