Vue进阶(幺零三):Markdown基本语法

309 阅读6分钟

Markdown是一种纯文本格式的标记语言。通过简单的标记语法,它可以使普通文本内容具有一定的格式。

相比WYSIWYG编辑器

优点:

  1. 因为是纯文本,所以只要支持Markdown的地方都能获得一样的编辑效果,可以让作者摆脱排版的困扰,专心写作。
  2. 操作简单。比如:WYSIWYG编辑时标记个标题,先选中内容,再点击导航栏的标题按钮,选择几级标题。要三个步骤。而Markdown只需要在标题内容前加#即可

缺点:

  1. 需要记一些语法(当然,是很简单。五分钟学会)。
  2. 有些平台不支持Markdown编辑模式。

页面内跳转

页面内跳转非常实用,在文档描述过程中经常会关联到页面内的其他章节内容,为了方便读者阅读,会需要添加页面跳转的功能;除此之外,页面内跳转,也可以用来手动制作目录。

实现页面跳转的方式也挺简单,可以实现跳转到任意标号的标题,但是也是非常的讲究,否则会出现无法跳转的情况。页面跳转的标记格式如下:

[显示的内容](#标题标号-标题文本)

注意要点:

  • []中括号填写需要在页面上显示的内容;
  • ()小括号内部声明跳转目标标题,以#开头,标题题号如果包含.、下划线直接忽略掉,标题文本中如果有空格,使用-横杠符号替代,标题文本中的大写字母转换成小写。

小技巧:
对于()小括号内的跳转目标标题,可以将Markdown导出HTML文件,查看HTML源码,用对应标题<h>标签下的id属性值,这样可以保证正确跳转。

标题

在想要设置为标题的文字前面加#来表示
一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。

注:标准语法一般在#后跟个空格再写文字。

示例:

# 这是一级标题
## 这是二级标题
### 这是三级标题
#### 这是四级标题
##### 这是五级标题
###### 这是六级标题

效果如下:

这是一级标题

这是二级标题

这是三级标题

这是四级标题

这是五级标题
这是六级标题

字体

加粗
要加粗的文字左右分别用两个*号包起来

斜体
要倾斜的文字左右分别用一个*号包起来

斜体加粗
要倾斜和加粗的文字左右分别用三个*号包起来

删除线
要加删除线的文字左右分别用两个~~号包起来

示例:

**这是加粗的文字**
*这是倾斜的文字*`
***这是斜体加粗的文字***
~~这是加删除线的文字~~

效果如下:

这是加粗的文字
这是倾斜的文字`
这是斜体加粗的文字
这是加删除线的文字

引用

在引用的文字前加>即可。引用也可以嵌套,如加两个>>三个>>>
n个…
貌似可以一直加下去,但没神马卵用

示例:

>这是引用的内容
>>这是引用的内容
>>>>>>>>>>这是引用的内容

效果如下:

这是引用的内容

这是引用的内容

这是引用的内容

分割线

三个或者三个以上的 - 或者 * 都可以。

示例:

---
----
***
*****

效果如下:




可以看到,显示效果是一样的。

图片

语法:

![图片alt](图片地址 ''图片title'')

图片alt就是显示在图片下面的文字,相当于对图片内容的解释。
图片title是图片的标题,当鼠标移到图片上时显示的内容。title可加可不加
示例:

![blockchain](ss0.bdstatic.com/70cFvHSh_Q1…
u=702257389,1274025419&fm=27&gp=0.jpg “区块链”)
效果如下:
在这里插入图片描述
markdown格式追求的是简单、多平台统一。那么图片的存储就是一个问题,需要用图床,提供统一的外链,这样就不用在不同的平台去处理图片的问题了。才能做到书写一次,各处使用。

超链接

语法:

[超链接名](超链接地址 "超链接title")
title可加可不加

示例:

[简书](http://jianshu.com)
[百度](http://baidu.com)

效果如下:

简书
百度

注:Markdown本身语法不支持链接在新页面中打开,如果想要在新页面中打开的话可以用html语言的a标签代替。

<a href="超链接地址" target="_blank">超链接名</a>

示例
简书

列表

无序列表
语法:
无序列表用 - + * 任何一种都可以

- 列表内容
+ 列表内容
* 列表内容

注意:- + * 跟内容之间都要有一个空格

效果如下:

  • 列表内容
  • 列表内容

有序列表
语法:
数字加点

1. 列表内容
2. 列表内容
3. 列表内容

注意:序号跟内容之间要有空格
效果如下:

  1. 列表内容
  2. 列表内容
  3. 列表内容

列表嵌套
上一级和下一级之间敲三个空格即可

  • 一级无序列表内容

    • 二级无序列表内容
    • 二级无序列表内容
  1. 一级有序列表内容

    1.1 二级无序列表内容
    1.2 二级无序列表内容
    1.3 二级无序列表内容

表格

语法:

表头|表头|表头
---|:--:|---:
内容|内容|内容
内容|内容|内容

第二行分割表头和内容。

  • 有一个就行,为了对齐,多加了几个
    文字默认居左
    -两边加:表示文字居中
    -右边加:表示文字居右
    注:原生的语法两边都要用 | 包起来。此处省略
    示例:
姓名|技能|排行
--|:--:|--:
刘备|哭|大哥
关羽|打|二哥
张飞|骂|三弟

效果如下:

姓名技能排行
刘备大哥
关羽二哥
张飞三弟

代码

语法:
单行代码:代码之间分别用一个反引号包起来

`代码内容`

代码块:代码之间分别用三个反引号包起来,且两边的反引号单独占一行

(```)
  代码...
  代码...
  代码...
(```)

注:为了防止转译,前后三个反引号处加了小括号,实际是没有的。这里只是用来演示,实际中去掉两边小括号即可。

示例:

单行代码

`create database hero;`

代码块

    function fun(){
         echo "这是一句非常牛逼的代码";
    }
    fun();

效果如下:

单行代码

create database hero;

代码块

    function fun(){
         echo "这是一句非常牛逼的代码";
    }
    fun();

流程图

```mermaid
flowchat
st=>start: 开始
op=>operation: My Operation
cond=>condition: Yes or No?
e=>end
st->op->cond
cond(yes)->e
cond(no)->op
&```

效果如下: