Markdown 语法整理
Markdown 语法整理
简明教程:https://ouweiya.gitbooks.io/markdown/
[TOC]
1.标题
代码
注:# 后面保持空格
1 | # h1 |
演示
![1562910228586](Markdown 语法整理/1562910228586.png)
2.分级标题
代码
注:=
-
最少可以只写一个,兼容性一般
1 | 一级标题 |
演示
![img](Markdown 语法整理/6912209-c969047ea76e86b3.webp)
3.TOC
输入[toc]
然后回车,即可创建一个“目录”。TOC从文档中提取所有标题,其内容将自动更新。
注:根据标题生成目录,兼容性一般
代码
1 | [TOC] |
演示
![img](Markdown 语法整理/6912209-0c9a604cd6f84d8c.webp)
4.引用
代码1(单行式)
1 | > hello world! |
演示
hello world!
代码2(多行式)
1 | > hello world! |
或者
1 | > hello world! |
演示
相同的结果
hello world!
hello world!
hello world!
代码3(多层嵌套)
1 | > aaaaaaaaa |
演示
aaaaaaaaa
bbbbbbbbb
cccccccccc
5.行内标记
注:用 ` 标记代码块将变成一行
代码
1 | 标记之外`hello world`标记之外 |
演示
标记之外hello world
标记之外
错误代码
注:不同平台错误略有差异
1 | 标记之外 ` |
演示
![img](Markdown 语法整理/6912209-6e436a12165b5469.webp)
6.代码块
注:与上行距离一空行
代码1(```)
注:用`````生成块
1 | ``` |
演示
1 | <div> |
代码2(Tab)
注: Tab缩进
1 | 我是文字…… |
演示
1 | <div> |
代码3(自定义语法)
注:根据不同的语言配置不同的代码着色
1 | ```javascript |
演示
1 | var num = 0; |
7.插入链接
代码1(内链式)
Alt text
:图片、链接的Alt标签,用来描述图片、链接的关键词,可以不写。最初的本意是当图片因为某种原因不能被显示时而出现的替代文字,后来又被用于SEO,可以方便搜索引擎根据Alt text里面的关键词搜索到图片。
链接
:可以是图片、链接的本地地址或者是网址。
标题
:鼠标悬置于图片、链接上会出现的标题文字,可以不写。
注:{:target="_blank"}
跳转方式兼容性一般 ,多数第三方平台不支持跳转(Typora上实测不行)
1 | [百度1](http://www.baidu.com/ "百度一下"){:target="_blank"} |
演示
代码2(引用式)
注:{:target="_blank"}
跳转方式兼容性一般 ,多数第三方平台不支持跳转(Typora上实测不行)
1 | [百度2][2]{:target="_blank"} |
演示
8.插入图片
代码1(内链式)
1 | [图片上传失败...(image-90880b-1542510791300)] |
演示
![img](Markdown 语法整理/6912209-8c53b79a706bb7c2.webp)
代码2(引用式)
1 | ![name][01] |
演示
![img](Markdown 语法整理/6912209-2b1e8871d7bf2d6e.webp)
9.插入图片带有链接
代码
1 | [[图片上传失败...(image-f83b77-1542510791300)]](http://www.baidu.com){:target="_blank"} // 内链式 |
演示
暂无
10.视频插入
注:Markdown 语法是不支持直接插入视频的
普遍的做法是 插入HTML的 iframe 框架,通过网站自带的分享功能获取,如果没有可以尝试第二种方法
第二是伪造播放界面,实质是插入视频图片,然后通过点击跳转到相关页面
代码1
注:多数第三方平台不支持插入<iframe>
视频
![youku](Markdown 语法整理/6912209-29337f2896bf4629.webp)
1 | <iframe height=498 width=510 src='http://player.youku.com/embed/XMjgzNzM0NTYxNg==' frameborder=0 'allowfullscreen'></iframe> |
演示
![img](Markdown 语法整理/6912209-d11325d111b86cc1.webp)
代码2
1 | [[图片上传失败...(image-49aefe-1542510791300)]](http://v.youku.com/v_show/id_XMjgzNzM0NTYxNg==.html?spm=a2htv.20009910.contentHolderUnit2.A&from=y1.3-tv-grid-1007-9910.86804.1-2#paction){:target="_blank"} |
演示
![img](Markdown 语法整理/6912209-d11325d111b86cc1-1562903542745.webp)
11.序表
代码1(有序)
注:序列.
后 保持空格
1 | 1. one |
演示
- one
- two
- three
代码2(无序)
1 | * one |
演示
- one
- two
- three
代码3(序表嵌套)
1 | 1. one |
演示
- one
- one-1
- two-2
- two
- two-1
- two-2
代码4(序表嵌套代码块)
注:换行+两个Tab
1 | * one |
演示:
-
one
1
var a = 10;
12.任务列表
注:兼容性一般 要隔开一行
代码
1 | 这是文字…… |
演示
- [x] 选项一
- [ ] 选项二
- [ ] [选项3]
13.表情
注:兼容一般
![img](Markdown 语法整理/6912209-35a94b525d1ec313.webp)
14.表格
注: :
代表对齐方式 ,:
与 |
之间不要有空格,否则对齐会有些不兼容
代码1
1 | | a | b | c | |
演示
a | b | c |
---|---|---|
居中 | 左对齐 | 右对齐 |
========= | =============== | ============ |
代码2(简约写法)
1 | a | b | c |
演示
a | b | c |
---|---|---|
居中 | 左对齐 | 右对齐 |
============ | ================= | ============= |
代码3(特殊表格)
注:一般对合并单元格,以及其他特殊格式表格,markdown 是无能为力的
所以常规的做法是使用HTML标签,但是这样的编写效率极低。
但是有了这款工具的话,所有问题都迎刃而解。
在线生成HTML代码 Tables Generator (国外的站)
![Tables Generator](Markdown 语法整理/6912209-46aac2b114b995ec.webp)
演示
![img](Markdown 语法整理/6912209-5e14abef7e65830d.webp)
15.支持内嵌CSS样式
代码
1 | <p style="color: #AD5D0F;font-size: 30px; font-family: '宋体';">内联样式</p> |
演示
内联样式
------16.语义标记
描述 | 效果 | 代码 |
---|---|---|
斜体 | 斜体 | *斜体* |
斜体 | 斜体 | _斜体_ |
加粗 | 加粗 | **加粗** |
加粗+斜体 | 加粗+斜体 | ***加粗+斜体*** |
加粗+斜体 | 加粗+斜体 | **_加粗+斜体_** |
删除线 | ~~删除线~~ |
17.语义标签
描述 | 效果 | 代码 |
---|---|---|
斜体 | 斜体 | <i>斜体</i> |
加粗 | 加粗 | <b>加粗</b> |
强调 | 强调 | <em>强调</em> |
上标 | Za | Z<sup>a</sup> |
下标 | Za | Z<sub>a</sub> |
键盘文本 | Ctrl | <kbd>Ctrl</kbd> |
换行 | `` |
18.格式化文本
保持输入排版格式不变
注:对内含标签需要破坏结构才能显示
代码
1 | <pre> |
演示
hello world hi hello world
错误解决方法
注:标签内部添加空格 或者 直接使用```标记来处理
代码1(插入空格)
1 | <pre> |
演示
< div> < div>< /div> < div>< /div> < div>< /div> < /div>
代码2( ``` 代码块标记)
1 | ``` |
演示
1 | <div> |
19.公式
注:1个$左对齐,2个居中
代码
1 | $$ x \href{why-equal.html}{=} y^2 + 1 $$ |
演示
$ x = {-b \pm \sqrt{b^2-4ac} \over 2a}. $
20.分隔符
注:最少三个 ---
或 ***
或 * * *
代码
1 | *** |
演示
21.脚注
代码
1 | Markdown[^1] |
演示
Markdown^1
22.锚点
代码
注:只有标题支持锚点, 跳转目录方括号后 保持空格
1 | [公式标题锚点](#1) |
演示
23.定义型列表
注:解释型定义
代码
1 | Markdown |
演示
Markdown
: 轻量级文本标记语言,可以转换成html,pdf等格式
代码块定义
: 代码块定义……
var a = 10;
24.自动邮箱链接
代码
1 | <xxx@outlook.com> |
演示
25.流程图
代码1
1 | ```flow // 流程 |
演示
1 | st=>start: 开始|past:> http://www.baidu.com |
代码详解
流程图分为两个部分: 定义参数 然后 连接参数
定义示例:
1 | tag=>type: content:>url // 形参格式 |
注:st=>start: 开始
的:
后面保持空格
形参 | 实参 | 含义 |
---|---|---|
tag | st | 标签 (可以自定义) |
=> | => | 赋值 |
type | start | 类型 (6种类型) |
content | 开始 | 描述内容 (可以自定义) |
:>url | http://www.baidu.com[blank] |
链接与跳转方式 兼容性很差 |
6种类型 | 含义 |
---|---|
start | 启动 |
end | 结束 |
operation | 程序 |
subroutine | 子程序 |
condition | 条件 |
inputoutput | 输出 |
连接示例:
1 | st->c1(yes,right)->c2(yes,right)->c3(yes,right)->io->e |
形参 | 实参 | 含义 |
---|---|---|
-> | -> | 连接 |
condition | c1 | 条件 |
(布尔值,方向) | (yes,right) | 如果满足向右连接,4种方向:right ,left,up ,down 默认为:down |
注:operation (程序); subroutine (子程序) ;condition (条件),都可以在括号里加入连接方向。
1 | operation(right) |
代码2
注:添加样式和url跳转 需要添加第三方的脚本
实际效果很差,使用起来麻烦,意义不大
1 | ```flow // 流程 |
演示
1 | st=>start: 启动|past:>http://www.baidu.com[blank] |
26.时序图
代码1
1 | ```sequence |
演示
1 | A->>B: 你好 |
代码详解
注:A->>B: 你好
后面可以不写文字,但是一定要在最后加上:
Note left of A 代表注释在A的左边
符号 | 含义 |
---|---|
- |
实线 |
> |
实心箭头 |
-- |
虚线 |
>> |
空心箭头 |
代码2
1 | ```sequence |
演示
1 | 起床->吃饭: 稀饭油条 |
27.生成侧边栏扩展
注:生成侧边栏一般是插入JS,再就是模板,
总体来说,很是麻烦,效果一般,不作详解。
作者仓库:i5ting_ztree_toc
![img](Markdown 语法整理/6912209-4d15bbf4a613ced4.webp)
精简版:作者博客HaleyPKU
总结:常用标记
标记 | Markdown 语法 |
---|---|
斜体 | *italic* |
粗体 | **bold** |
图片 | ![Image Title](http://xxx.png) |
链接 | [Link Text](http://xxx.com) |
内联代码 | code |
块级代码 | ```code block``` |
引用 | > Here is a quote block |
分隔符 | ---- 或 ***** |
标题 1 | # Heading 1 |
标题 2 | ## Heading 2 |
标题 3 | ### Heading 3 |
标题 4 | #### Heading 4 |
附:使用VSC写Markdown文档
Visual Studio Code 原生就支持高亮Markdown的语法,想要一边编辑一遍预览,有两种方法:
- Ctrl + Shift + P 调出主命令框,输入 Markdown,应该会匹配到几项 Markdown相关命令
![img](Markdown 语法整理/1077977-20180424164803684-1848899171.png)
- 先按Ctrl+K,然后全部松开,紧接着再按 V,也能调出实时预览框。【要在英文输入状态下】