【Markdown】Markdown常用语法总结
一、简介
Markdown是一种轻量级标记语言,它用简洁的语法代替排版,使我们专心于码字。它的目标是实现易读易写,成为一种适用于网络的书写语言。同时,Markdown支持嵌入html标签。
1. Markdown历史:
Markdown由John Gruber在2004年创建。其中在语法上有很大一部分是跟Aaron Swartz共同合作的。
Aaron Swartz就是那位于2013年自杀,有着开挂一般人生经历的程序员。维基百科对他的介绍是:软件工程师、作家、政治组织者、互联网活动家、维基百科人。
他有着足以让你跪拜的人生经历:
14岁参与RSS 1.0规格标准的制订。
2004年入读斯坦福,之后退学。
2005年创建Infogami,之后与Reddit合并成为其合伙人。
2010年创立求进会(Demand Progress),积极参与禁止网络盗版法案(SOPA)活动,最终该提案居然被撤回。
2011年7月19日,因被控从MIT和JSTOR下载480万篇学术论文并以免费形式上传于网络被捕。
2013年1月自杀身亡。
2. Markdown优势:
- 方便编辑。任何一个文本编辑器就可以编辑,连大家熟悉的Windows记事本也可以。让编写者专注于内容,而不是格式。是否有为了调整不听话的编辑器(好吧,我说的就是word)的格式而浪费大量时间的经历?
- 可以放到版本管理系统中,追踪历史变更。这对码农们来说太重要了,这样文档可以和程序代码一起放版本管理系统中了。如果你不清楚版本管理系统,只需要把它理解成可以永久追踪的修改历史记录即可(版本管理系统可以另开一篇文章了)。这样,多人协作编辑的时候,也不用担心文档被改坏了。
3. Markdown使用注意:
Markdown使用#、+、*等符号来标记, 符号后面必须跟上至少1个空格才有效!
二、标题
1. 用#标记
说明:
在标题开头加上1~6个#,依次代表一级标题、二级标题…六级标题
1 | # 一级标题 |
效果:
一级标题
二级标题
三级标题
四级标题
五级标题
六级标题
2. 用=和-标记
说明:
在标题底下加上任意个=代表一级标题,-代表二级标题
1 | 一级标题 |
效果:
一级标题
二级标题
三、列表
1. 无序列表
说明:
使用-、+和*作为列表标记
1 | - Red |
效果:
- Red
- Green
- Blue
2. 有序列表
说明:
使用数字加英文句点.来表示
1 | 1. Red |
效果:
- Red
- Green
- Blue
3. 列表嵌套
说明:
列表嵌套只需要在子列表选项的前面添加4个空格即可。
1 | * 无序列表1 |
效果:
- 无序列表1
- 有序列表1.1
- 有序列表1.2
- 无序列表2
- 无序列表2.1
- 无序列表2.2
四、引用
说明:
引用以>来表示,引用中支持多级引用、标题、列表、代码块、分割线等常规语法。
1 | > 这是一段引用 //在`>`后面有 1 个空格 |
效果:
这是一段引用 //在
>后面有 1 个空格这是引用的代码块形式 //在`>`后面有 5 个空格代码例子(代码未放引用):
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
一级引用
二级引用
三级引用
这是一个四级标题
- 这是第一行列表项
- 这是第二行列表项
五、强调
说明:
两个*或-代表加粗,一个*或-代表斜体,~~代表删除。
1 | *斜体文本* 或者 _斜体文本_ |
效果:
斜体文本 或者_斜体文本_
加粗文本 或者 加粗文本
粗斜体文本 或者 粗斜体文本
删除文本
六、图片与链接
说明:
图片与链接的语法很像,区别在一个!号
1 | 图片:![]()  |
链接又分为行内式、参考式和自动链接
1 | 这是行内式链接:[ConnorLin's Blog](http://connorlin.github.io)。 |
效果:
这是行内式链接:ConnorLin’s Blog。
这是参考式链接:[ConnorLin’s Blog][url],其中url为链接标记,可置于文中任意位置。
[url]: http://connorlin.github.io/ “ConnorLin’s Blog”
链接标记格式为:[链接标记文本]: 链接地址 链接title(可忽略)这是自动链接:直接使用
<>括起来http://connorlin.github.io这是图片:![][avatar]
[avatar]: https://connorlin.github.io/images/avatar.jpg
七、代码
说明:
代码分为行内代码和代码块。
1 | 行内代码使用 `代码` 标识,可嵌入文字中 |
八、表格
表格对齐格式
- 居左::----
- 居中::----:或-----
- 居右:----:
1 | |标题|标题|标题| |
效果:
标题 标题 标题 居左测试文本 居中测试文本 居右测试文本 居左测试文本1 居中测试文本2 居右测试文本3 居左测试文本11 居中测试文本22 居右测试文本33 居左测试文本111 居中测试文本222 居右测试文本333
九、分隔线
说明:
在一行中用三个以上的*、-、_来建立一个分隔线,行内不能有其他东西。也可以在符号间插入空格。
1 | *** |
效果:
十、换行
十一、脚注(注解)
说明:
使用[^]来定义脚注
1 | 这是一个脚注的例子[^1] |
效果:
这是一个脚注的例子[1]
十二、高级技巧
1. HTML元素
不在Markdown涵盖范围之内的标签,都可以直接在文档里面用HTML撰写。 目前支持的HTML元素有:
1 | <kbd> <b> <i> <em> <sup> <sub> <br> |
示例:
1 | 使用 <kbd>Ctrl</kbd> + <kbd>Alt</kbd> + <kbd>Del</kbd> 来重启电脑 |
效果:
使用 Ctrl + Alt + Del 来重启电脑
加粗的字体
斜体字
强调文本
这个文本包含上标文本
这个文本包含下标文本
使用 br 元素
在文本中
换行
字体
1 | <font face="微软雅黑" color="red" size="6">字体及字体颜色和大小</font> |
效果:
字体及字体颜色和大小
字体颜色
文本对齐方式
1 | <p align="left">居左文本</p> |
效果:
居左文本
居中文本
居右文本
下划线
1 | <u>下划线文本</u> |
效果:
下划线文本
2. 转义
Markdown使用了很多特殊符号来表示特定的意义,如果需要显示特定的符号则需要使用转义字符,Markdown使用反斜杠转义特殊字符。
Markdown支持对以下特殊符号的转义:
1 | \ 反斜线 |
示例:
1 | **文本加粗** |
效果:
文本加粗
** 正常显示星号 **
3. 数学公式
当你需要在编辑器中插入数学公式时,可以使用两个美元符$$包裹TeX或LaTeX格式的数学公式来实现。提交后,问答和文章页会根据需要加载Mathjax对数学公式进行渲染
示例:
1 | $$ |
效果:
这里是脚注 ↩︎
