目录

2638264600 的个人博客

记录精彩的程序人生

markdown语法速览

[TOC]

markdown概述

  • Markdown 的目标是实现「易读易写易改」
  • Markdown 语法的目标是:成为一种适用于网络的书写语言。
  • Markdown 兼容HTML,HTML区块元素需要前后加空行且标签无制表符或空格来缩进
  • 特殊字符自动转换,<(<)、 &(&)
  • Markdown 段落是由一个或多个连续的文本行组成,它的前后要有一个以上的空行,两个以上的空格然后回车为强制换行但依然连续
  • HTML的元素:
    • 区块元素:<div><table><pre><p>
    • 区段元素:<span><cite><del>

区块元素

标题

  • 类 Setext 形式是用底线的形式, = (最高阶标题)和 - (第二阶标题)
  • 类 Atx 形式则是在行首插入 1 到 6 个 # ,对应到标题 1 到 6 阶,为美观可在行尾加#来闭合

区块引用

  • 在每行的最前面加上 >,也可以只在整个段落的第一行最前面加上 >
  • 区块引用可以嵌套(例如:引用内的引用),只要根据层次加上不同数量的 >
  • 区块内也可以使用其他的 Markdown 语法,包括标题、列表、代码区块等

列表

  • 无序列表使用星号、加号或是减号作为列表标记
  • 有序列表则使用数字接着一个英文句点
  • 项目标记后面则一定要接着至少一个空格或制表符
  • 可以缩进,最多 3 个空格
  • 如果列表项目间用空行分开项目内容会用 <p> 标签包起来
  • 如果要在列表项目内放进引用,那 > 就需要缩进
  • 如果要放代码区块的话,该区块就需要缩进两次,也就是 8 个空格或是 2 个制表符
  • 行首出现数字-句点-空白,可以在句点前面加上反斜杠来转义。

代码区块

  • 代码区块很简单,只要简单地缩进 4 个空格或是 1 个制表符就可以
  • 一个代码区块会一直持续到没有缩进的那一行(或是文件结尾)

分隔线

  • 用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。
  • 也可以在星号或是减号中间插入空格

区段元素

链接

  • 行内式和参考式两种形式,链接文字都是用 [方括号] 来标记
  • 在方块括号后面紧接着圆括号并插入网址链接即可,如果你还想要加上链接的 title 文字,只要在网址后面,用双引号把 title 文字包起来即可
  • 可以使用相对路径
  • 参考式的链接是在链接文字的括号后面再接上另一个方括号,而在第二个方括号里面要填入用以辨识链接的标记,在文件的任意处把这个标记的链接内容定义出来
  • 链接内容定义的形式为:
    • 方括号(前面可以选择性地加上至多三个空格来缩进),里面输入链接文字
    • 接着一个冒号
    • 接着一个以上的空格或制表符
    • 接着链接的网址
    • 选择性地接着 title 内容,可以用单引号、双引号或是括弧包着
    • 也可以把 title 属性放到下一行,也可以加一些缩进
    • 并不区分大小写
  • 参考式的链接其实重点不在于它比较好写,而是它比较好读

强调

  • 使用星号(*)和底线(_)作为标记强调字词的符号,被 * 或 _ 包围的字词会被转成用 <em> 标签包围,用两个 * 或 _ 包起来的话,则会被转成 <strong>
  • 如果你的 * 和 _ 两边都有空白的话,它们就只会被当成普通的符号
  • 如果要在文字前后直接插入普通的星号或底线,可以用反斜线

代码

  • 用反引号把它包起来(`)
  • 如果要在代码区段内插入反引号,你可以用多个反引号来开启和结束代码区段

图片

  • 一个惊叹号 !
  • 接着一个方括号,里面放上图片的替代文字
  • 接着一个普通括号,里面放上图片的网址,最后还可以用引号包住并加上 选择性的 'title' 文字
  • Markdown 还没有办法指定图片的宽高

反斜杠

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

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

自动链接

  • 以比较简短的自动链接形式来处理网址和电子邮件信箱,只要是用方括号包起来, Markdown 就会自动把它转成链接。一般网址的链接文字就和链接地址一样

脚注

  • Markdown[^1]``[^1]: Markdown是一种纯文本标记语言

题目

  • 内容用[TOC]且前无空格

公式 {#1}

  • 注:1个$左对齐,2个居中

锚点

[公式标题锚点](#1)

### [需要跳转的目录] {#1}    // 方括号后保持空格

定义型列表

  • 开头一个:+Tab或 四个空格
  • // 保持空一行与 递进缩进

自动邮箱链接

  • <xxx@outlook.com>

流程图

st=>start: 开始|past:> http://www.baidu.com // 开始
e=>end: 结束              // 结束
c1=>condition: 条件1:>http://www.baidu.com[_parent]   // 判断条件
c2=>condition: 条件2      // 判断条件
c3=>condition: 条件3      // 判断条件
io=>inputoutput: 输出     // 输出
//----------------以上为定义参数-------------------------

//----------------以下为连接参数-------------------------
// 开始->判断条件1为no->判断条件2为no->判断条件3为no->输出->结束
st->c1(yes,right)->c2(yes,right)->c3(yes,right)->io->e
c1(no)->e                   // 条件1不满足->结束
c2(no)->e                   // 条件2不满足->结束
c3(no)->e                   // 条件3不满足->结束

st=>start: 开始|past:> http://www.baidu.com // 开始
e=>end: 结束 // 结束
c1=>condition: 条件1:>http://www.baidu.com[_parent] // 判断条件
c2=>condition: 条件2 // 判断条件
c3=>condition: 条件3 // 判断条件
io=>inputoutput: 输出 // 输出
//----------------以上为定义参数-------------------------

//----------------以下为连接参数-------------------------
// 开始->判断条件1为no->判断条件2为no->判断条件3为no->输出->结束
st->c1(yes,right)->c2(yes,right)->c3(yes,right)->io->e
c1(no)->e // 条件1不满足->结束
c2(no)->e // 条件2不满足->结束
c3(no)->e // 条件3不满足->结束

时序图

A->>B: 你好
Note left of A: 我在左边     // 注释方向,只有左右,没有上下
Note right of B: 我在右边
B-->A: 很高兴认识你

例子

区块元素实例:

  • 这是无序列表的二级标题

  • 无序列表的分割线


引用 多行就多个>

  1. 多重引用的有序列表
  2. 多重引用的有序
我是代码区块
	好巧啊,我也是!

楼上好,我也是代码块,虽然是单行的

楼上,咱俩都是代码块哦!
* ## 这是无序列表的二级标题
* 无序列表的分割线
 	***  
	或
	-    -    - 
> 引用   多行就多个\>  
> > 1. 多重引用的有序列表
> > 1. 多重引用的有序

	我是代码区块
		好巧啊,我也是!
`楼上好,我也是代码块,虽然是单行的`
 ``` 
楼上,咱俩都是代码块哦!
 ```

区段元素实例:

我是百度-- 我也是百度---我还是百度

强调 斜体 加粗 我也加粗 删除线不明显
我是相对图片

[我是百度](http://www.baidu.com "百度TITLE")--  [ 我也是百度 ][bd]---[我还是百度][]

   [bd]:  http://www.baidu.com  "百度参考式TITLE"
   [1]:  http://www.baidu.com  '百度参考式TITLE'
   [我还是百度]:  http://www.baidu.com  (百度参考式(TITLE)
 *强调* _斜体_  **加粗** __我也加粗__   ~~删除线不明显~~
  ![我是相对图片](/return.gif '转啊转啊')

 $$ x \href{why-equal.html}{=} y^2 + 1 $$

 $ x = {-b \pm \sqrt{b^2-4ac} \over 2a}. $

```
$$ x \href{why-equal.html}{=} y^2 + 1 $$
$ x = {-b \pm \sqrt{b^2-4ac} \over 2a}. $
```
总结:
分割线用*和-,且不低于三个
无序列表开头用 - + *加空格
有序列表开头用数字加点加空格
列表嵌套多敲三个空格再开头
单行代码用``,多行代码用```独占一行
段落之间空一行,换行加俩空格
标题用#或=或-
表格用|开分隔,数量要对应

另外表格语法:
第二行分割表头和内容。

  • 有一个就行,为了对齐,多加了几个
    文字默认居左
    -两边加:表示文字居中
    -右边加:表示文字居右
    注:原生的语法两边都要用 | 包起来。此处省略
    姓名|技能|排行

标题:markdown语法速览
作者:三学一心
地址:http://bk.isseeker.com/articles/2019/03/07/1551946473733.html