引言
觉得自己有必要要学学Markdown了,但同时担心光看自己记不住,同时想作为工具书日后忘记用于回顾。
本文删去了Markdown语法说明中的一些如md与html之间的转义等繁琐说明,教之更为精简,更专注于Markdown本身语法。
区块元素
标题
在行首插入 1 到 6 个 # ,对应到标题 1 到 6 阶,例如:
# 这是 H1
## 这是 H2
### 这是 H3
#### 这是H4
#####这是H5
###### 这是 H6
实际效果如下:
这是 H1
这是 H2
这是 H3
这是H4
这是H5
这是 H6
区块引用
在最前面加上 > 即可
> 这是一个区块引用
只在第一行加 >
效果等同于:
> 这是一个区块引用
> 每行都加 >
> 这是一个区块引用
> > 嵌套使用>
> #### 在引用中使用标题。
>
> 1. 在引用中使用列表项。
> 空四个格子或一个制表符引用代码:
>
> //test
> public class Main{
>
> }
实际效果:
这是一个区块引用
这是一个区块引用
每行都加 >
这是一个区块引用
嵌套使用>
在引用中使用标题。
- 在引用中使用列表项。
空四个格子或一个制表符引用代码:
//test public class Main{ }
列表
无序列表使用星号、加号或减号标记(三者互相等同):
* unordered list 1
+ unordered list 2
- unordered list 3
在无需列表项内放入引用,需要缩进4格:
1.列表项
> 引用内容
在无需列表项内放入代码块,需要空一行缩进8格:
1.列表项
代码块
效果如下:
- unordered list *
- unordered list *
- unordered list -
- unordered list -
- unordered list +
- unordered list +
-
无序列表项
引用内容
-
无序列表项
代码块
有序列表使用数字接一个英文句号:
1. 表项1
2. 表项2
3. 表项3
效果如下:
- 表项1
- 表项2
- 表项3
(注意:有序列表不支持加入引用和代码块)
代码区块
在Markdown中建立代码区块,只需要空一行并缩进4个空格或一个制表符即可:
如下:
代码区块的前一行文字:
(代码内容)
效果如下:
代码区块前一行文字:
(代码内容)
分割线
用三个以上的星号、减号、底线来建立分割线,行内不能有其他东西:
* * *
***
*****
- - -
---------------------------------------
效果如下:
区段元素
链接
Markdown 支持两种形式的链接语法: 行内式和参考式两种形式。
行内式链接语法
在方块括号(显示文本)后面紧接着圆括号并插入网址链接即可,如果你还想要加上链接的标题,只要在网址后面,用双引号把文字包起来即可,例如:
这是一个行内式[链接](http://example.com/ "标题") 。
这个行内式[链接](http://example.net/) 没有标题属性。
连接到[本地](/local/ "本地资源")资源。
效果如下:
参考式链接语法
参考式的链接是在链接文字的括号后面再接上另一个方括号,第二个方括号里填入的是用以唯一标识链接的标记id,例如:
这是一个参考式[链接][link1]。
......
然后在这个markdown文件的任意处定义上面的标记:
[link1]: http://example.com/ "参考式链接标题"
也可以写成这样:
[link1]: <http://example.com/> "参考式链接标题"
标签可以由字母、数字、空白和标点符号组成,但是并不区分大小写,因此下面两个链接是一样的:
[link text][a]
[link text][A]
隐式链接标记,形如[link][],第二个方括号空着,可以省略指定链接ID,这种情形下,ID会视为等同于链接文字。
效果如下:
强调
Markdown 使用星号(*)和底线(_)作为标记强调字词的符号。
被 * 或 _ 包围的字词会被转成斜体,用两个 * 或 _ 包起来的话,则会被转成粗体,例如:
*单星号强调(斜体)*
_单下划线强调(斜体)_
**双星号强调(粗体)**
__双下划线强调(粗体)__
***三符号强调(斜体+粗体)***
插在**文字**中间的强调
反斜杠来显示 \*号
效果如下:
单星号强调(斜体)
单下划线强调(斜体)
双星号强调(粗体)
双下划线强调(粗体)
三符号强调(斜体+粗体)
插在文字中间的强调
反斜杠来显示 *号
行内代码
标记一小段行内代码,用反引号将代码包起来,例如:
`code`写的非常的烂。
``用两个反引号来显示代码中的反引号(`)``
用两个\`\`来包围代码并空格分开来显示代码开头和结尾的反引号: `` `foo` ``
效果如下:
printp("是printf不是printp");
这里写错了。
用两个反引号来显示代码中的反引号(`)
用两个``来包围代码并空格分开来显示代码开头和结尾的反引号:`foo`
图片
Markdown 使用一种和链接很相似的语法来标记图片,同样也允许两种样式: 行内式和参考式。
其实图片与链接的语法类似,只是多了一个感叹号(!)而已,并没有看上去那么复杂。
行内式图片
行内式的图片语法是使用一个感叹号接一对方括号接一对圆括号,圆括号里面放入放上图片的网址,后面可以用引号包住选择性的标题文字,例如:
![](/path/to/img.jpg "可选标题")
效果如下:
参考式图片
参考式的图片语法是使用一个感叹号接一对方括号,再接上一对方括号,例如:
![可选文字][id]
......
同样的在md文件任意处定义id
[id]: url/to/image "可选标题"
效果如下:
其他
自动链接
只要是用尖括号包起来, Markdown 就会自动把它转成链接。一般网址的链接文字就和链接地址一样,例如:
<http://example.com/>
<address@example.com>
效果如下:
反斜杠
可以利用反斜杠来插入一些在语法中有其它意义的符号,例如:
\*
\-
\+
效果如下:
*
-
+
表格
123
345
见例:
//注意第二行的冒号(:)
//结合效果展示可以看出:
//默认不加冒号为文字靠左,两边都加冒号为文字居中,加在右边为文字靠右
|Attribute1|Attribute2|Attribute3|Attribute4|
|----------|:----------|--------:|:--------:|
|mem1|mem1|mem1|mem1|
|mem2|mem2|mem2|mem2|
效果如下:
靠左(默认) 靠左 靠右 居中 mem1 mem1 mem1 mem1 mem2 mem2 mem2 mem2