Markdown基础语法

用简短的一页纸介绍Markdown基本语法

Markdown语法与Markdown编辑器

Markdown是一种标记语法,这种标记语法需要使用相应的Markdown渲染器(或称为Markdown解析器Markdown编译器)将Markdown源文件渲染成最终可读的效果( 类似浏览器引擎HTML源文件渲染成网页 )。

Markdown编辑器就是可以输入Markdown源文件并有相应的Markdown渲染器渲染成最终可读效果的一种工具,一般情况下,Markdown编辑器都具有实时预览的功能(每次输入或修改Markdown源文件都会即时渲染成最终可读效果)。

Markdown语法组成结构

排版主要包括版面格式段落格式字符格式三种组成结构,Markdown本身没有版面格式的语法,不过很多markdown编辑工具可以通过CSS进行版面格式设置(比如:ATOMMPE插件)。

由于Markdown是一种使用标记语法来定义格式排版语法,因此,就由格式定义字符来定义格式

  1. 特殊定符
    1. 格式定义字符 用于定义格式的特殊字符,Markdown格式定义字符有`、*_()[]#+-.!(其他扩展的Markdown渲染器可能有^~:等)
    2. 转义字符 用于转义并显示特殊字符(而不是使用特殊字符来定义格式),Markdown的转义字符是\(在Markdown中并不是出现了特殊字符就必须转义才能显示,而是在特殊字符定义上下文中才需要显式转义
  2. 字符格式 也称为行内格式,用于行内某些字符的格式或行为
  3. 段落格式 用于一段或多段之间的格式
  4. 内嵌HTML Markdown可以直接使用内嵌HTML来定义Markdown支持或不支持的结构

注意:在排版中的段落(Paragraph)和换行(Line Break)是两个不同的概念,换行不一定换段落(在Word换行即换段落),段落是一个排版元素,同一个段落有共同的段落格式(多个段落也可以使用相同的段落格式),一个段落可以包括多行段落多行之间的一个明显差别就是不同的段落之间使用的是段落间距,而多行之间使用的是行间距(一般情况下,段落间距会比行间距大)。

在最初的Markdown中进行换行需要使用<br/>标签或在行末增加两个或以上的空格,否则中间没有空行(什么都没有或只有空格TAB符)的两行会显示在一行中(与HTML源文件的渲染效果一样)。而中间有空行的多行即是不同的段落

GFM扩展中,不需要使用<br/>标签或在行末增加两个或以上的空格也可以显示为多行,但这多行是同一个段落,只有中间有空行多行才是不同的段落

Markdown字符格式

粗体

使用**__(两个下划线字符)包围的字符将被渲染成粗体。

粗体Markdown源文件:

**这是粗体**
__这也是粗体__

粗体的渲染效果:
这是粗体
这也是粗体

斜体

使用*_包围的字符将被渲染成斜体

斜体Markdown源文件:

*这是斜体*
_这也是斜体_

斜体的渲染效果:
这是斜体
这也是斜体

备注:中文字符一般不使用斜体,因为中文的斜体不怎么好看

行内代码

使用 ` (键盘中~字符所在的按键)包围的字符将被渲染成行内代码HTML里的<code>标签)。

行内代码Markdown源文件:

这是`行内代码`

行内代码的渲染效果:
这是行内代码

链接

Markdown可以使用inline-sytlereference-style两种方式定义链接

inline-style 的语法:[link-text](url-link "optional-tips"),其中:

  1. link-text 显示的 链接文本
  2. url-link url链接
  3. optional-tips鼠标放置在link-text上显示的提示

reference-style 的语法包括两部分:

  1. [link-text][reference-id]
  2. [reference-id]:url-link "optional-tips" 在同一个文件的其他段落定义

链接Markdown源文件:

这是[百度搜索](www.baidu.com "使用百度进行搜索")inline-style

这是[百度搜索][baidu]reference-style

[baidu]:www.baidu.com "使用百度进行搜索"

链接的渲染效果:
这是百度搜索inline-style

这是百度搜索reference-style

Markdown段落格式

标题

Markdown支持两种标题定义方式:

  1. setext-style支持一级和二级标题,通过在单独的一行中定义标题格式,多于一个=字符定义为一级标题、多于一个-字符表示二级标题
  2. atx-style支持一级至六级标题,通过在标题行前的#字符定义标题,一个#定义一级标题、两个#定义二级标题,以此类推支持最多定义到六级标题

setext-style标题的Markdown源文件:

这是一级标题
=

这是二级标题
-

atx-styleMarkdown源文件:

# 这是一级标题

## 这是二级标题

###### atx-style支持到六级标题

建议使用atx-style定义标题,一方面atx-style可以支持至六级标题,另一方面atx-style不需要使用单独一行定义标题格式。

列表

列表的类型

列表分为有序列表无序列表两种基本列表,列表之间可以嵌套(通过增加1个TAB4个空格缩进)形成多级列表

有序列表

使用非负数字+.+一个或以上空格定义有序列表非负数字不必要从1递增,Markdown在渲染时会从1开始自动递增(当有序列表的第一行是0.时从0开始递增,多级列表的第二级开始不支持从0开始)。

有序列表的Markdown源文件:

0. 这是一级有序列表
    1. 这是二级有序列表
        1. 这是三级有序列表
8. 这是一级有序列表
0. 这是一级有序列表

有序列表的渲染效果:

  1. 这是一级有序列表
    1. 这是二级有序列表
      1. 这是三级有序列表
  2. 这是一级有序列表
  3. 这是一级有序列表

无序列表

使用一个*+-加上一个以上空格定义无序列表

无序列表的Markdown源文件:

* 这是无序列表
+ 这是无序列表
- 这是无序列表

+ 这是一级无序列表
    1. 这是二级有序列表
    1. 这是二级有序列表
+ 这是一级无序列表

无序列表的渲染效果:

  • 这是无序列表
  • 这是无序列表
  • 这是无序列表
  • 这是一级无序列表
    1. 这是二级有序列表
    2. 这是二级有序列表
  • 这是一级无序列表

引用

Markdown使用email-style>字符)定义引用引用段落有条竖线展示这是一个引用段落,引用段落可以是多级的。

引用的Markdown源文件:

>这是一级引用
>>这是二级引用
>>>这是三级引用
>>这还是三级引用
>这还是三级引用

>新的引用段落

引用的渲染效果:

这是一级引用

这是二级引用

这是三级引用
这还是三级引用
这还是三级引用

新的引用段落

图片

Markdown中嵌入图片的语法跟链接的语法类似,差别在于嵌入图片比嵌入链接前多了个!特殊字符表示这是一个指向图片url

图片的Markdown源文件:

这是一张使用inline-style链接的图片

[图片上传失败...(image-6ec809-1531624818276)]


这是一张使用reference-style链接的图片
![当图片无法显示时出现这个文本][reference-id]

[reference-id]:image-url "optional-tips"

图片链接最好放在一个单独的段落中(而不仅仅是不同的行)以便正常显示,因为如果跟文本在同一个段落中,有可能因为行高不够而无法将图片显示完整。

分隔行

在单独的一个段落中使用三个或多于三个*-_将被渲染成分隔行

代码块

``` 包围的段落称为代码块(有些Markdown解释器支持语法高亮)。

表格

Markdown之父 John GruberAaron Swartz 发布的Markdown解释器中没有表格格式,目前一般使用的表格格式GFM的扩展

表格的Markdown源文件:

表格字段一|表格字段二|表格字段三|表格字段四
--|:--|--:|:--:
默认居中对齐|左对齐|右对齐|居中对齐
cell|cell|cell|cell

表格的渲染效果:

表格字段01 表格字段02 表格字段03 表格字段04
默认左对齐 左对齐 右对齐 居中对齐
cell cell cell cell
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,560评论 4 361
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,104评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,297评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,869评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,275评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,563评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,833评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,543评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,245评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,512评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,011评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,359评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,006评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,062评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,825评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,590评论 2 273
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,501评论 2 268

推荐阅读更多精彩内容

  • Markdown 简介 Markdown 是一种用来写作的轻量级标记语言, 用一些简单的标记, 来代替常见的排版格...
    高小原阅读 400评论 0 0
  • 本文转自@younghz 主要内容 Markdown是什么?谁发明了这么个东西?为什么要使用它?怎么使用?都谁在用...
    Wynter_Wang阅读 419评论 0 1
  • 代码 如果你只想高亮语句中的某个函数名或关键字,可以使用 function_name() 实现 通常编辑器根据代码...
    呼呼哥阅读 864评论 0 0
  • 1 现在我开始觉得上课越来越索然无味了。 可敬的师者将人类几千年来思考的精华公正又无私地倾泻在传承的一代人身上,他...
    凌玉天阅读 253评论 0 0
  • 女生往往很在乎自己的初吻 但男生最在乎的“第一次接吻” 并不是非要初吻,而是最美好的吻 一次缠绵悱恻的接吻 ​可以...
    大力学姐阅读 889评论 0 0