markdown语法熟悉,总结及测试
Markdown 标题语法
若要创建标题,可以在标题内容前面添加 #
, #
的数量多少表示这是几级标题
1 | 例如: |
注意:为了稳定,需要在代表标题等级的 # 符号后表述完成后,与你的标题正文中使用空格来进程分隔
如何避免转义
在需要避免转义的语法前添加 \
即可
Markdown 段落语法
若想新建一个段落,可以使用Enter键换一行或多行来实现,并且多行只会被识别成一行。若想换多行,请见下一节
Markdown 换行语法
若想在Markdown中换一行,可以在行末添加两个以上空格然后再按Enter键(不推荐),或者直接按Enter键(推荐)。
多次换行
若想一次性进行多次换行,可以在行末添加<br>
Markdown 强调语法
粗体
若要加粗文本可以在需要加粗的文本前后各添加两个 *
或 _
来实现文本 加粗
斜体
若要斜体显示文本,可以在要斜体显示的文本前后各添加一个 *
或 _
来实现文本 斜体
粗体并斜体
若要使文本加粗并斜体显示,可以在要实现此效果的文本前后添加三个 *
或 _
来实现文本 加粗并斜体
Markdown 引用语法
要创建块引用,可以在要引用的文本前加一个 >
符号
1 | >引用内容 |
效果如下:
这是一些引用内容
多个段落的块引用
块引用可以包含多个段落。为段落之间的空白行添加 >
即可
1 | >多个段落的引用 |
效果如下
这是一些引用内容
这是一些引用内容
嵌套块引用
1 | >some thing |
效果如下
some thing
some thing
带有其他元素的块引用
块引用可以包含其他 Markdown 格式的元素。但是并非所有元素都可以引用,需要自行实践。
1 | > #### The quarterly results look great! |
效果如下
The quarterly results look great!
Revenue was off the chart.
Profits were higher than ever.
Everything is going according to plan.
Markdown 列表语法
可以将多个条目组织成或有序列表。
有序列表
若要创建有序列表,可以在每一个列表项前添加数字并紧跟一个英文句点 .
,数字可以不用按顺序排列,但是推荐以1进行起始
1 | 1. text |
或者不按顺序
1 | 1. text |
或者
1 | 1. text |
效果如下
- text
- text
- text
无序列表
若要创建无序列表,可以在每一个列表项前面添加 -
或者 *
或者 +
,缩进列表项可以创建嵌套列表
以 -
1 | - text |
以 *
1 | * text |
以 +
1 | + text |
嵌套
1 | - text |
效果如下
常规
- text
- text
- text
嵌套
- text
- text
- text
- text
- text
在列表中嵌套其他元素
若要在保留列表的结构的前提下在列表中添加另一种元素,请将该元素缩进四个空格或者一个制表符,如下列所示
段落
1 | * text |
效果如下
text
text
another text
text
引用块
1 | * 一些无序列表项 |
效果如下
一些无序列表项
另一些无序列表项
另外一些块项目
无序列表项
代码块
代码块通常采用四个空格或者一个制表符来缩进,当这些代码块在列表中时,你需要将他们缩进八个空格或者两个制表符
1 | 1. 一些代码 |
效果如下
一些代码
一些东西
<html> <head> <title>TEST</title> </head>
balabala……..
图片
图片在被放在列表中也请使用一个制表符或四个空格来缩进
1 | 1. 巴拉巴拉 |
效果如下
- 一些内容
- 一些内容
- 一些内容
列表
你可以在一个有序列表中放入一个无序列表,也请使用一个制表符或者四个空格来缩进
1 | 1. First item |
效果如下
- First item
- Second item
- Third item
- Indented item
- Indented item
- Fourth item
Markdown 代码语法
若要将一段单词或短语表示为代码,请在要标记的单词前后各加一个 `` `
1 | 一些文本和一些`代码` |
效果如下
一些文本和一些代码
转义反引号(`)
若代码中也有反引号,可以代码包裹在 ``` ` 中
1 | ``代码中包括`反引号`的部分`` |
效果如下
代码中包括`反引号`的部分
代码块
若要创建代码块,请将代码块中的代码每一行后缩进四个空格或者一个制表符
1 | <html> |
效果如下
<html>
<head>
</head>
</html>
围栏式代码块
若要创建不缩进的代码块,请在代码块的开头及末尾的单独一行使用 ```` `
1 |
一些代码
一些代码
1 |
效果如下
1 | 一些代码 |
Markdown 分割线语法
要创建一条水平分割线,可以在单独一行上使用三个或以上 *
或 -
或 _
,并且不能包含其他任何内容,推荐在使用分割线的单独行上下都进行空行
1 | *** |
上面三种效果都一样如下
Markdown 链接语法
若要创建一个超链接,你可以将超链接要显示的文本放在 []
内,连接地址紧跟着放在 ()
内
1 | 这是一个超链接 [xiaoyiovo的博客](xiaoyiovo.top) |
效果如下
这是一个链接 xiaoyiovo的博客
给连接增加标题
简介的标题是鼠标悬浮在超链接上会显示的内容,可选,若要添加标题,你可以在包裹着连接地址的 ()
内,放在链接后以空格分隔并用 ""
包裹
1 | 这是一个链接 [xiaoyiovo的博客](xiaoyiovo.top "一个小小博客") |
效果如下
这是一个链接 xiaoyiovo的博客
网址和E-Mail地址
使用 < >
可以很方便的把URL或者E-Mail地址变成可点击的链接
1 | <xiaoyiovo.top> |
效果如下
https://www.xiaoyiovo.top
<mail@expmple>
带强调或其他格式化的链接
若要给链接进行 强调 ,可以在链接前后使用和强调语法相同的方式来给链接进行强调,若要将链接表示为代码,请在链接语法的 []
内使用 `` `来包裹代码内容
1 | 带强调的超链接 **[blog主页](xiaoyiovo.top)** |
带强调的超链接 blog主页
带斜体的超链接 blog主页
表示为代码的超链接 code
锚点链接
若要创建锚点链接,笔者没有找Markdown的语法,故用html语法,可以达到效果,直接使用 <span> </span>
标签对,直接在Markdown中这样写
1 | <span id="9.0.4">要创建锚点链接的文本</span> |
效果如下
要创建锚点链接的文本
使用锚点链接
若要使用锚点链接,语法类似超链接,使用 []
包裹锚点链接要显示的文本,后面紧跟 (#在p标签内设置的id)
以下是链接到上方文本的锚点链接示例
1 | [跳转至id为9.0.4的文本的锚点链接](#9.0.4) |
效果如下
Markdown 图片语法
若要添加图像,可以使用 !
,后面紧跟图片的替代文本包裹在 []
之中,之后再紧跟图片的链接包裹在 ()
之中,如果你想,还可以在图片的链接后面添加图片标题用 ""
包裹并和图片链接用空格分隔
1 | ![图片替代文本](图片链接 “图片标题”) #语法格式 |
效果如下
使用本地图片
若要使用本地图片,首先需要将如片放入你的Markdown文件同名的文件夹内,推荐在根目录下的_config.yml文件中修改此项
1 | post_asset_folder: true |
这样就可以在git中使用hexo new
命令后自动创建同名资源文件夹
之后再图片链接处直接填上图片的全名
例如
1 | ![图片替代文本](图片链接 “图片标题”) #语法格式 |
效果如下
但是有时这样做可能会不起作用,你需要在git中安装这个包
1 | npm install https://github.com/CodeFalling/hexo-asset-image –save |
安装完毕后即可如此使用,但是在例如Typora、MarkText这些编辑器中无法正常预览图片,这是正常的,并且笔者也没有找到解决方法,但是你可以使用如下命令静态部署至本地来查看效果
1 | hexo clean |
链接图片
若要给图片增加链接,你可以把图片的Markdown语法用 []
包裹,并在后面紧跟链接并用 ()
包裹
1 | [![一张图片](png3.jpg)](xiaoyiovo.top) |
效果如下
Markdown 转义字符语法
若要显示原本用于语法的Markdown字符,可以在字符前面添加 \
1 | \* 若是不加"\"符号,这将会被转义为一个无序列表 |
效果如下
* 若是不加”"符号,这将会被转义为一个无序列表
* 若是不加”"符号,这将会被转义为一个无序列表
可以被被转义的字符
字符 | 名称 |
---|---|
\ | 反撇 |
` | 反引号 |
* | 星号 |
_ | 下划线 |
{ } | 大括号 |
[ ] | 中括号 |
# | 警号 |
+ | 加号 |
- | 减号/杠 |
. | 点 |
! | 叹号 |
特殊字符自动转义
在HTML文件中,有两个字符需要特殊处理 <
和 &
。<
符号用于起始标签,&
用于标记HTML实体,如果你只是想使用这些符号,你必须要使用实体的方式,比如 <
和 &
Markdown允许你直接使用这些符号,它会自动帮你转义
Markdown 内嵌HTML标签
对于Markdown涵盖之外的标签,都可以直接在文件里变直接使用HTML语法,不需要额外标注这是HTML语法或是Markdown语法,使用时只需将HTML标签添加到Markdown文本中
行内标签
HTML的行级标签如 <span></span>
<cite></cite>
<del><del>
不受限制,可以在Markdown的段落,列表,或是标题里任意使用,若你习惯,你可不用Markdown语法而直接使用HTML语法,比如图片和链接语法对于一些人来说使用HTML语法会更方便
HTML行内标签和块标签是不同的,在行内标签内使用Markdown语法是会被正常解析的
1 | 这是一个**粗体**文本,这是一个<em>斜体</em>文本 |
效果i如下
这是一个粗体文本,这是一个斜体文本
这是一段斜体文本中的粗体并斜体文本
块标签
若要使用块标签如 <div></div>
<table></table>
<pre></pre>
<p></p>
标签,必须在前后加上空行,以便于内容区分。而且这些元素的开始于结尾标签,不可以用空格或tab来缩进
Markdown会自动识别这些区块元素,避免在这些区块标签前后加上没有必要的其他标签,比如 <p></p>
标签
例如,在Markdown文件中加上一段HTML表格
1 | 一个段落 |
注意,Markdown语法在HTML块标签中不会被解析,比如你无法在HTML的块元素中使用Markdown的 *强调*
Markdown 表格
若要添加一个表格,请使用三个或多个 -
来创建每列的列标题,并使用管道符 |
来分隔每列,你可以在表的任意一端添加管道符
1 | |第一列标题|第二列标题| |
效果如下
第一列标题 | 第二列标题 |
---|---|
内容 | 内容 |
sometext | sometext |
单元格宽度可以变化,所呈现的内容看起来相同
1 | |第一列标题|第二列标题| |
效果如下
第一列标题 | 第二列标题 |
---|---|
内容 | 内容 |
sometext | sometext |
对齐
你可以在标题行中连字符左侧,右侧或是两侧添加 :
来设定本列的左对齐,右对齐或是居中对齐
1 | |左对齐列|居中对齐列|右对齐列| |
左对齐列 | 居中对齐列 | 右对齐列 |
---|---|---|
文本 | 文本 | 文本 |
格式化表格中的文字
你可以在表格中添加强调文字,链接和代码
(仅可已使用行内代码而非代码块)
你不可以添加标题,块引用,列表,水平线,图像和HTML标签
在表中转义管道字符
你可以在表格中使用HTML字符代码 |
来在表中添加管道 |
字符
Markdown 任务列表语法
任务列表使你可以创建带有复选框的项目列表,若要创建任务列表,可以在任务列表项前添加 -
和 [ ]
并在中间用空格分隔,若要让任务标记为已完成,可以在 [ ]
中间添加x,例如 [x]
1 | - [x] 撰写第一篇Blog |
效果
- 撰写第一篇Blog
- 学习C++
- 学习Python
结束语
以上,就是笔者整理的所有比较常用的Markdown语法,文章内容大量参考了Markdown 官方教程中的内容并结合自己的实践做了一些修改,希望能帮助到正在看这篇文章的你,最后,感谢你的阅读,祝你生活愉快,学习顺利