*一、Markdown是什么 *
Markdown是一种轻量级的标记语言,使用的标记语法非常简单,它可以使用纯文本编辑器来创建丰富的文本,并可以被转换为.html
、.pdf
和本身的.md
文件。
二、Markdown常用语法
1. 标题
Markdown支持两种标题的语法,类 Atx 和类 Setext形式。
1.1 类 Atx 形式
在文字前加#即可定义标题,共六级标题,#与标题之间加一空格,如下:
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
效果如下:
一级标题
二级标题
三级标题
四级标题
五级标题
六级标题
1.2 类 Setext 形式
个人觉得不如类Atx方便,这里就不介绍了,有兴趣的可以参考Markdown 中文版语法说明
2. 引用
2.1 单行引用
引用别处的文字,可以使用>
加引用的内容即可,符号和引用内容之间加一空格。
> 这里是引用的内容
效果如下:
这里是引用的内容
2.2 区块引用
也可以区块引用:
> 这里是引用区块的内容
> 这里是引用区块的内容
> 这里是引用区块的内容
还可以只在整个段落的第一行最前面加上>
来区块引用:
> 这里是引用区块的内容,这里是引用区块的内容;
这里是引用区块的内容,这里是引用区块的内容。
这里是引用区块的内容,这里是引用区块的内容。
效果如下:
这里是引用区块的内容
这里是引用区块的内容
这里是引用区块的内容
2.3 引用嵌套
区块引用还可以嵌套使用:
> 这里是引用区块的内容
> > 这里是嵌套的引用区块的内容
效果如下:
这里是引用区块的内容
这里是嵌套的引用区块的内容
2.4 嵌套其他
引用区块内还可以嵌套使用其他的 Markdown 语法,如标题、列表、代码区块等:
> 这是引用区块
> #引用区块内的标题一
> * 引用区块内的列表
> \
Markdown
` `效果如下:
这是引用区块
引用区块内的标题
- 引用区块内的列表
Markdown
3. 列表
在文字前加上+
、-
或者*
即可变为无序列表,加上1.
2.
3.
即可变为有序列表,符号和列表项内容之间加一空格。
3.1 无序列表
+ 无序列表项1
+ 无序列表项2
+ 无序列表项3
- 无序列表项1
- 无序列表项2
- 无序列表项3
或者
* 无序列表项1
* 无序列表项2
* 无序列表项3
效果如下:
- 无序列表项1
- 无序列表项2
- 无序列表项3
3.2 有序列表
1. 有序列表项1
2. 有序列表项2
3. 有序列表项3
有序列表标记上使用的数字并不会影响输出的结果,如下:
1. 有序列表项1
1. 有序列表项2
1. 有序列表项3
或者
3. 有序列表项1
2. 有序列表项2
8. 有序列表项3
输出的效果都是如下所示的有序列表:
- 有序列表项1
- 有序列表项2
- 有序列表项3
不过建议第一个列表项目最好还是从1.
开始,因为 Markdown 未来可能会支持有序列表的 start 属性,即设置有序列表起始列表项的序列号数字。
3.3 列表缩进
列表项标记也可以缩进,最多 3 个空格,项目标记后面则一定要接着至少一个空格或制表符。
列表项标记也可以包含多个段落,每个项目下的段落都必须缩进 4 个空格或 1 个制表符。
当我们需要让列表看起来更漂亮时,就可以把内容用固定的缩进整理好。
* 这里是列表项内容这里是列表项内容这里是列表项内容这里是列表项, 内容这里是列表项内容这里是列表项内容这里是列表项内容这里是列表。 项内容这里是列表项内容这里是列表项内容这里是列表项内容。
* 这里是列表项内容这里是列表项内容这里是列表项内容这里是列表项, 内容这里是列表项内容这里是列表项内容这里是列表项内容这里是列表; 项内容这里是列表项内容这里是列表项内容这里是列表项内容。
或者不整理:
* 这里是列表项内容这里是列表项内容这里是列表项内容这里是列表项, 内容这里是列表项内容这里是列表项内容这里是列表项内容这里是列表。 项内容这里是列表项内容这里是列表项内容这里是列表项内容。
* 这里是列表项内容这里是列表项内容这里是列表项内容这里是列表项, 内容这里是列表项内容这里是列表项内容这里是列表项内容这里是列表; 项内容这里是列表项内容这里是列表项内容这里是列表项内容。
效果是一样的,如下:
- 这里是列表项内容这里是列表项内容这里是列表项内容这里是列表项,
内容这里是列表项内容这里是列表项内容这里是列表项内容这里是列表。
项内容这里是列表项内容这里是列表项内容这里是列表项内容。 - 这里是列表项内容这里是列表项内容这里是列表项内容这里是列表项,
内容这里是列表项内容这里是列表项内容这里是列表项内容这里是列表;
项内容这里是列表项内容这里是列表项内容这里是列表项内容。
3.4 列表嵌套其他内容
在列表项目内放引用时, 这里是代码>
需要缩进。放代码区块的话,该区块就需要缩进* 两次*,也就是 8 个空格或者 2 个制表符。
* 列表项
> 引用
* 列表项
效果如下:
- 列表项
引用
- 列表项
这里是代码
3.5 意外列表
无意中产生的列表:
1986. What a great season.
效果如下:
- What a great season.
可以做如下处理:
1986\. What a great season.
效果如下:
1986. What a great season.
也就是在行首出现数字-句点-空白,要避免这样的状况,可以在句点前面加上反斜杠转义。
4. 代码区块与分割线
4.1 代码区块
Markdown 中建立代码区块很简单,只要简单地缩进 4 个空格或是 1 个制表符就可以了。不过貌似需要两个制表符才行。
代码区块的内容代码区块的标题
效果如下:
代码区块的标题
代码区块的内容
一个代码区块会一直持续到没有缩进的那一行(或是文件结尾)。
如果要标记一小段行内代码,你可以用反引号`把它包起来。如\
`
效果为
`。
4.4 分割线
在一行中用三个以上的星号、减号、底下划线来建立一个分隔线,行内不能有其他东西。不过可以在星号或是减号中间插入空格。
***
---
___
* * *
- - -
_ _ _
效果一样的,如下:
如果要做连续的下划线,最好在每一行的符号后面加一空行,不然可能会出问题,不知是这样还是都是这样。
5. 链接与图片
插入链接与插入图片的语法很像,区别在于插入图片前面多一个感叹号!
。
5.1 插入链接
[链接描述](这里是链接的地址)
效果如下:
这里是链接的描述
5.2 插入图片
插入图片的地址需要图床,别人推荐 CloudApp 的服务,生成URL地址即可。ps:我没有用过
可以直接把图片拖过来。
![图片描述](图片URL "图片title")
——图片title是可选项
效果如下:
6. 强调和转义
Markdown 使用星号*
和底线_
作为标记强调字词的符号。
用一个*
或者_
包含一段文本得到的是斜体,用两个*
或者_
包含一段文本得到的是粗体。开始和结束的符号要相同。转义在前面加上转义字符 \ 即可,如:*。
*斜体*
**粗体**
_斜体_
__粗体__
效果如下:
斜体 粗体斜体 粗体
*
和_
两边都有空白的话,它们就只会被当成普通的符号。如*
结果就是 *, _
结果就是 _ 。
如果要在文字前后直接插入普通的星号或底线,你可以用反斜线转义。如\*
结果就是*, \_
结果就是 _ 。
6. 表格
表格是比较麻烦的
|表头 |表头|表头|表头| | -|:--| ---:| :----:| |单元格| |单元格|单元格| |单元格|单元格|单元格|单元格| |单元格|单元格|单元格|单元格|
-
||
表示空单元格 - 表头下一行中
-
数量无关单元格宽度,根据列数均分宽度 - 表头下一行中的
:
表示的是文字的对齐方式,不设置则只是表头文字居中;在-
左边则居左,右边居右,在-
两边各有一个:
则居中 - 合并单元格等其他单元格有关内容另行搜索
效果如下:
表格与整个表格前面的文字之间需要加一空行。
表头 | 表头 | 表头 | 表头 |
---|---|---|---|
单元格 | 单元格 | 单元格 | |
单元格 | 单元格 | 单元格 | 单元格 |
单元格 | 单元格 | 单元格 | 单元格 |
总结
以上是我在上学习使用Markdown的练习,感觉空一行好重要啊,很多时候因为没有空一行都会导致一些意外。
本文主要参考Markdown 中文版语法说明。如果想要了解更多有关Markdown语法的内容,请阅读Markdown 中文版语法说明。