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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

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