MarkDown语法

MarkDown简介

Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯(英语:John Gruber)。 它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档。这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。

由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,许多网站都广泛使用Markdown来撰写帮助文档或是用于论坛上发表消息。 如GitHubRedditDiaspora、[Stack Exchange](https://baike.baidu.com/item/Stack Exchange/13777796)、OpenStreetMapSourceForge简书工作台 · 语雀 (yuque.com)、印象笔记等,甚至还能被使用来撰写电子书

**优点:**操作简单,纯文本格式,在哪里效果都一样,真正的所想即所得。尤其在列表和表格那块再也不用担心乱码了!word杀我。

语法

这篇文章只介绍MarkDown语法。实际在各编辑工具中使用时会略有不同。下篇文章介绍使用Typora基于MarkDown语法写文章!

一、标题

在想要设置为标题的文字前面加#来表示
一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。

注:标准语法一般在#后跟个空格再写文字,貌似简书不加空格也行。

示例:

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

效果如下:

这是一级标题

这是二级标题

这是三级标题

这是四级标题

这是五级标题
这是六级标题

二、字体

  • 加粗

要加粗的文字左右分别用两个*号包起来

  • 斜体

要倾斜的文字左右分别用一个*号包起来

  • 斜体加粗

要倾斜和加粗的文字左右分别用三个*号包起来

  • 删除线

要加删除线的文字左右分别用两个~~号包起来

示例:

1
2
3
4
**这是加粗的文字**
*这是倾斜的文字*`
***这是斜体加粗的文字***
~~这是加删除线的文字~~

效果如下:

这是加粗的文字
这是倾斜的文字
这是斜体加粗的文字
这是加删除线的文字


三、引用

在引用的文字前加>即可。引用也可以嵌套,如加两个>>三个>>>
n个…
貌似可以一直加下去,字体会逐级放大。

示例:

1
2
>这是引用的内容
>>这是引用的内容

效果如下:

这是引用的内容

四、分割线

三个或者三个以上的 - 或者 * 都可以。

示例:

1
2
3
4
---
----
***
*****

效果如下:
可以看到,显示效果是一样的。





五、图片

语法:

1
2
3
4
![图片alt](图片地址 "图片title")

图片alt就是显示在图片下面的文字,相当于对图片内容的解释。
图片title是图片的标题,当鼠标移到图片上时显示的内容。title可加可不加

示例:

1
2
![blockchain](https://ss0.bdstatic.com/70cFvHSh_Q1YnxGkpoWK1HF6hhy/it/
u=702257389,1274025419&fm=27&gp=0.jpg "区块链")

效果如下:

上传本地图片直接点击导航栏的图片标志,选择图片即可

markdown格式追求的是简单、多平台统一。那么图片的存储就是一个问题,需要用图床,提供统一的外链,这样就不用在不同的平台去处理图片的问题了。才能做到书写一次,各处使用。

六、超链接

语法:

1
2
[超链接名](超链接地址 "title")
title可加可不加,加了鼠标进过时会显示title的内容

示例:

1
2
[简书](http://jianshu.com)
[百度](http://baidu.com)

效果如下:

简书
百度


七、列表

无序列表

语法:
无序列表用 - + * 任何一种都可以

1
2
3
4
5
- 列表内容
+ 列表内容
* 列表内容

注意:- + * 跟内容之间都要有一个空格

效果如下:

  • 列表内容
  • 列表内容
  • 列表内容
有序列表

语法:
数字加点加空格

1
2
3
4
5
1. 列表内容
2. 列表内容
3. 列表内容

注意:序号跟内容之间要有空格

效果如下:

  1. 列表内容
  2. 列表内容
  3. 列表内容
列表嵌套

上一级和下一级之间加3个空格即可

  • 一级无序列表内容
    • 二级无序列表内容
    • 二级无序列表内容
    • 二级无序列表内容
  • 一级无序列表内容
    1. 二级有序列表内容
    2. 二级有序列表内容
    3. 二级有序列表内容
  1. 一级有序列表内容
    • 二级无序列表内容
    • 二级无序列表内容
    • 二级无序列表内容
  2. 一级有序列表内容
    1. 二级有序列表内容
      1. 三级有序内容
      2. 三级有序内容
    2. 二级有序列表内容
    3. 二级有序列表内容

八、表格

语法:

1
2
3
4
5
6
7
8
9
10
11
表头|表头|表头
---|:--:|---:
内容|内容|内容
内容|内容|内容

第二行分割表头和内容。
- 有一个就行,为了对齐,多加了几个
文字默认居左
-两边加:表示文字居中
-右边加:表示文字居右
注:原生的语法两边都要用 | 包起来。此处省略

示例:

1
2
3
4
5
|姓名|技能|排行|
|--|:--:|--:|
|刘备||大哥|
|关羽||二哥|
|张飞||三弟|

效果如下:

姓名 技能 排行
刘备 大哥
关羽 二哥
张飞 三弟

九、代码

语法:
单行代码:代码之间分别用一个反引号包起来

1
`代码内容`

代码块:代码之间分别用三个反引号包起来,且两边的反引号单独占一行

1
2
3
4
5
(```)
代码...
代码...
代码...
(```)

注:为了防止转译,前后三个反引号处加了小括号,实际是没有的。这里只是用来演示,实际中去掉两边小括号即可。

示例:

单行代码

1
`create database hero;`

代码块

1
2
3
4
5
6
(```)
function fun(){
echo "这是一句非常牛逼的代码";
}
fun();
(```)

效果如下:

  • 单行代码
1
create database hero;
  • 代码块
1
2
3
4
function fun(){
echo "这是一句非常牛逼的代码";
}
fun();

十、流程图

代码:

1
```flow   按回车(enter键)
1
2
3
4
5
6
7
8
9
st=>start: 开始
op=>operation: My Operation
cond=>condition: Yes or No?
e=>end

st->op->cond
cond(no)->op
cond(yes)->e
&```

先是用=>定义start、operation、condition、end的代号分别对应不同的框样式;然后用->定义路径。

参考链接:https://www.jianshu.com/p/191d1e21f7ed