Markdown语法入门

Markdown
上一篇笔记的时间是2016年底,踩着2017的小尾巴又心血来潮搞了一把,希望这次能坚持下来吧。工欲善其事必先利其器,先整理复习一下Markdown语法。

简介

Markdown 是一种轻量级的「标记语言」。首先说说 Markdown 最大的优点,纯文本,这样只需要专注于文字本身而非排版。目前使用的编辑器 MacDown,这是一款开源的编辑器,界面简洁明了,使用简单。

更新

2018.1.14

增加锚点使用方法

Markdown 语法规则

标题

在行首插入1到6个#,对应标题1到6阶梯,#号后需要有空,例如:

1
2
3
# This is H1
## This is H2
###### This is H6

段落和换行

一个 Markdown 段落是由一个或多个连续的文本行组成,它使用段前段后的空行进行区分段落而非回车直接进行换行,普通段落不该用空格或制表符来缩进。例如

1
2
3
4
5
paragraph 1

paragraph 2

paragraph 3

区块引用

每一行开头加上>

1
2
3
4
5
6
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
> consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
> Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.
>
> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
> id sem consectetuer libero luctus adipiscing.

也可以只在每个段落的行首加上>

1
2
3
4
5
6
> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.

效果:

This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.

列表

无序列表

在行首添加*+-号,并在符号后添加空格,如

1
2
3
* a
* b
* c

效果:

  • a
  • b
  • c

有序列表

有序列表则使用数字接着一个英文句点:

1
2
3
1. a
2. b
3. c

效果:

  1. a
  2. b
  3. c

代码区块

只要在行首简单地缩进 4 个空格或是 1 个制表符就可以

1
2
3
this is a normal paragraph:

this is a code block。

分割线

一行中使用三个以上*-_就可以建立一个分割线,行内不能有其他内容,也可以在符号中插入空格。

1
2
3
4
5
6
7
8
9
* * *

***

*****

- - -

---------------------------------------

分割线如下


区段元素

强调

Markdown使用*_包围内容表示强调:

1
2
3
4
*斜体*
_斜体_
**加粗**
__加粗__

效果:
斜体
加粗

链接

Markdown 支持两种风格的链接:Inline 和 Reference。

Inline:
This is [an example](http://example.com/ "Title") inline link.

Reference:

1
2
This is [an example] [id] reference-style link.
[id]:http://example.com/ "Optional Title Here"

其中的标签id不区分大小写,链接地址也可以是服务器的路径。

效果:
This is an example

锚点

语法与链接的一样,若要跳转到如下段落:

1
# This is H1

字母转成消息,空格用-代替,编写如下:

1
[H1](#this-is-h1)

效果可以参考:简介

图片

图片的使用方法基本上和链接类似,也支持 Inline 和 Reference 两种模式,只是在中括号前加叹号:

1
2
3
4
![Alt text](/path/to/img.jpg "Optional title")

![Alt text][id]
[id]: url/to/image "Optional title attribute"

自动链接

用尖括号包起来自动识别为链接:

1
<http://example.com/>

效果:
http://example.com/

短代码

如果要标记一小段行内代码,你可以用反引号把它包起来(`),例如:

1
Use the `printf()` function.

效果:
Use the printf() function.

段内换行

两段文字之间敲两个空格符

1
2
This is(后面加两个空格)
a single paragraph

效果:
This is
a single paragraph

扩展语法

扩展语法并非所有编辑器都能看到效果

删除线

用两个~包围内容:

1
~~deleted~~

效果:
deleted

代码块及代码高亮

代码块使用三个`包围多行代码,代码高亮在首行`之后加上语言名称即可:

1
2
3
4
5
​```js
router.post('/logout', function(req, res, next) {
res.send('respond with a resource,logout');
});
​```

效果:

1
2
3
router.post('/logout', function(req, res, next) {
res.send('respond with a resource,logout');
});

按键框

使用<kbd>...</kbd>表示按键:

1
<kbd>Ctrl+[</kbd> and <kbd>Ctrl+]</kbd>

效果:
Ctrl+[ and Ctrl+]

表格

代码:

1
2
3
4
5
| Tables        | Are           | Cool  |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |

效果:

Tables Are Cool
col 3 is right-aligned $1600
col 2 is centered $12
zebra stripes are neat $1
Cotin Yang wechat
欢迎订阅我的微信公众号 CotinDev
小小地鼓励一下吧~😘