Markdown 速查手册

(原创不易,转载请注明原作者及原文链接)

Markdown

一、标题


行首插入 1 到 6 个 # 分别生成一到六级标题。如:

# 一级标题
## 二级标题
### 三级标题

效果如下:

一级标题

二级标题

三级标题

二、分隔线


一行单独包含 3 个及以上的 *_ 生成一条贯穿整行的分隔线。如:

## 二级标题
********************
正文

效果如下:

二级标题


正文

三、段落


一段连续的文字即成一个段落,段落与段落之间至少需要一个空行。单纯的回车换行不会生成段间距。如:

这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。
这是第二个段落。

这是第三个段落。

效果如下:

这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。
这是第二个段落。

这是第三个段落。

四、列表


无序、有序

行首插入 1 个 *+- 即可生成无序列表。行首插入 1.2.3.、……即可生成有序列表。注意:符号与文本之间必须要有 1 个空格。如:

+ 无序列表
+ 无序列表
+ 无序列表


1. 有序列表
2. 有序列表
3. 有序列表

效果如下:

  • 无序列表
  • 无序列表
  • 无序列表
  1. 有序列表
  2. 有序列表
  3. 有序列表

段间距

如果希望列表的列表项之间有段落的段间距效果,需要在列表项之间插入一行空行。如:

+ 无序列表

+ 无序列表

+ 无序列表

效果如下:

  • 无序列表

  • 无序列表

  • 无序列表

多个段落

如果希望列表项包含多个段落,需要在列表项的附属段落文本之前插入 4 个空格。如:

+   这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。

    这是第一个段落的附属段落。

+   这是第二个段落。

效果如下:

  • 这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。

    这是第一个段落的附属段落。

  • 这是第二个段落。

多级列表

列表项前插入空格即可增加列表级数,相同空格数为同一级别。空格数不同,则空格数多的级别较高。建议以 4 个空格为单位进行缩进,以确保正确显示。如:

1. 有序列表
    * 无序列表
        * 无序列表
        * 无序列表
    * 无序列表
2. 有序列表

效果如下:

  1. 有序列表
    • 无序列表
      • 无序列表
      • 无序列表
    • 无序列表
  2. 有序列表

代码块

如果希望列表项包含代码块,需要在列表项的代码块文本之前插入 8 个空格。如:

+ 这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。

        这是第一个段落的代码块。

+ 这是第二个段落。

效果如下:

  • 这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。这是第一个段落。

      这是第一个段落的代码块。
    
  • 这是第二个段落。

五、引用块


行首插入 > 即可生成引用块。引用块里可以嵌套 Markdown 语法。如:

你可以这样使用分隔符:
> # 二级标题
> ********************
> 正文

效果如下:

你可以这样使用分隔符:

二级标题


正文

六、代码


行内代码

在代码文本两侧分别插入 1 个 `注意:这个键位于键盘 Esc 键下方。如果代码文本中包含 `,则需要在代码文本两侧分别插入 2 个 `,并且如果代码文本首尾就是 `,还需要插入空格。如:

Chrome浏览器可以使用 `Ctrl + Shift + T` 组合键打开刚刚关闭的网页
以上就是 `` ` `` 的常见用法

效果如下:

Chrome浏览器可以使用 Ctrl + Shift + T 组合键打开刚刚关闭的网页
以上就是 ` 的常见用法

代码块

在行首插入 4 个空格即可生成代码块。也可以在代码文本的前后插入空行,并插入 3 个 ` 让整个代码文本生成代码块。如:

假设你想将一个行为重复 n 次,并且行为与已重复的次数相关,你可以编写如下方法:

    public static void repeat(int n, IntConsumer accept) {
        for (int i = 0; i < n; i++) {
            accept.accept(i);
        }
    }

然后可以这样去调用它:

```
public static void main(String[] args) {
    repeat(10, (i) -> System.out.println("Count down: " + (9 - i)));
}
```

效果如下:

假设你想将一个行为重复 n 次,并且行为与已重复的次数相关,你可以编写如下方法:

public static void repeat(int n, IntConsumer accept) {
    for (int i = 0; i < n; i++) {
        accept.accept(i);
    }
}

然后可以这样去调用它:

public static void main(String[] args) {
    repeat(10, (i) -> System.out.println("Count down: " + (9 - i)));
}

高亮规则

代码块会根据代码内容自动匹配高亮规则,如果你对匹配结果不满意,也可以用关键字进行指定。如:

``` markdown
<http://www.jianshu.com/>
```

效果如下:

<http://www.jianshu.com/>

经测试,简书支持的部分关键字如下:

coffeescript
cpp
css
java
javascript
json
markdown
matlab
objectivec
perl
php
python
ruby
scala
scheme
sql
tex
xml

欢迎在评论区补充。

七、链接


行内式

要显示的链接文字写在 [] 里面,紧跟在后面的链接地址写在 () 里面。如果需要鼠标悬浮在链接文字上时有额外的文字提示,可以在链接地址后面加 1 个空格,并写在 "" 里面。如:

[简书](http://www.jianshu.com/ "随时随地发现和创作内容")

效果如下:

简书

参考式

你也可以提前写好链接,并赋于 id 值,然后在文章中需要链接的地方通过 id 值进行插入。注意:id 可以是字母、数字、空白和标点符号,但是并不区分大小写。如:

[jianshu]: http://www.jianshu.com/ "随时随地发现和创作内容"
[简书][jianshu]

效果如下:

简书

简单链接、邮箱

你还可以以更简单的形式提供链接或邮箱。如:

<http://www.jianshu.com/>
<contact@jianshu.com>

效果如下:

http://www.jianshu.com/
contact@jianshu.com

八、图片


图片与链接插入方式基本相同,只是前面多加了 !,也分为行内式和参考式。如:

![头像](http://upload-images.jianshu.io/upload_images/6967706-8cfcefeb48045bd5.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 "震惊中的萌娃")
[touxiang]: http://upload-images.jianshu.io/upload_images/6967706-8cfcefeb48045bd5.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240 "震惊中的萌娃"
![头像][touxiang]

效果如下:

头像

头像

九、强调


在需要强调的文本两侧分别插入 1 个 *_ 可使文本倾斜显示,插入 2 个 *_ 可使文本加粗显示,插入 2 个 ~ 可使文本拥有删除效果,不同效果还可以叠加。

语法与效果如下:

语法 效果
*倾斜* 倾斜
**加粗** 加粗
~~删除线~~ 删除线
***倾斜&加粗*** 倾斜&加粗
*~~倾斜&删除线~~* 倾斜&删除线
**~~加粗&删除线~~** 加粗&删除线
***~~倾斜&加粗&删除线~~*** 倾斜&加粗&删除线

十、特殊字符转义


如果你在文本而非代码块中插入 Markdown 语法所使用的那些特殊字符,可能会出现意料之外的渲染结果。你需要在特殊字符之前插入 \ 来使它们正确显示。

Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:

\   反斜线
`   反引号
*   星号
_   底线
{}  花括号
[]  方括号
()  括弧
#   井字号
+   加号
-   减号
.   英文句点
!   惊叹号

十一、表格


表格分为表头、对齐方式、表体 3 个部分,缺一不可。单元格之间使用 | 分隔。对齐方式分为默认、左对齐、居中对齐、右对齐 4 种形式。注意:表格前后要留有空行。多余的空白符和 - 可以使源码看起来不那么糟糕,对渲染结果没有影响。如:

默认    | 左对齐   | 居中对齐 | 右对齐
------- | :------ | :-----: | -------:
对齐效果 | 对齐效果 | 对齐效果 | 对齐效果

效果如下:

默认 左对齐 居中对齐 右对齐
对齐效果 对齐效果 对齐效果 对齐效果

表格内换行

使用 HTML 的 <br> 标签进行换行。如:

  标签 | 说明
------ | -----
`<br>` | 这是一个 HTML 标签<br>使用该标签可以强制换行

效果如下:

标签 说明
<br> 这是一个 HTML 标签
使用该标签可以强制换行

十二、让文档更美观、易读


  • 在二级标题下方使用分隔符
  • 段落之间插入空行让段落拥有段间距
  • 「关键字」「」 而不是 “” 来标记,并考虑使用加粗效果
  • 在数字、英文单词、行内代码等文本的两边各插入 1 个半角空格

十三、参考资料


(原创不易,转载请注明原作者及原文链接)

推荐阅读更多精彩内容

  • (Markdown语法没有一个统一的标准,不同的工具或平台采用的标准不一样,所以有些语法规则和功能是有差异的) 0...
    迟道阅读 36,386评论 3 54
  • 作者:连玉君 (知乎 | 简书 | 码云) Stata连享会   计量专题 || 精品课程 || 简书推文 |...
    stata连享会阅读 9,635评论 1 85
  • 1. 斜体和粗体 代码: 显示效果: 这是一段斜体 这是一段粗体 这是一段加粗斜体 这是一段删除线 2. 分级标题...
    泊牧阅读 821评论 0 2
  • 与梦雨生活了多年之后,锦程才终于明白,原来,这世界上最动人的事并非相爱的人在一起,而是不相爱的两个人也可以如此相依...
    三秋树5266阅读 82评论 0 3
  • 在协助整理过程中,灵慧发现在不同的家庭里都会有类似的情况——孩子不愿意在自己的房间里睡觉,要和爸爸妈妈挤在一张床上...
    灵慧整理阅读 178评论 0 5