基础语法
标题
在单词或短语前面添加井号 (#
) :#
的数量代表了标题的级别。如,三个 #
表示三级标题 (<h3>
)
# 一级标题
## 二级标题
###### 六级标题
换行
在行末添加两个或多个空格,然后按回车键,即可换行(<br>
)
有争议的,因为很难在编辑器中直接看到空格,并且很多人在每个句子后面都会有意或无意地添加两个空格。由于这个原因,你可能要使用除结尾空格以外的其它方式来换行。幸运的是,几乎每个 Markdown 应用程序都支持另一种换行方式:HTML 的 <br>
标签。
为了兼容性,请在行尾添加“结尾空格”或 HTML 的 <br>
标签来实现换行。
弃我去者昨日之日不可留<br>乱我心者今日之日多烦忧
弃我去者昨日之日不可留
乱我心者今日之日多烦忧
强调
粗体
在需要加粗的部分前后
各添加两个
星号(asterisks)或下划线(underscores)
为兼容考虑,请使用星号(asterisks)
**粗体**
粗体
斜体
在需要斜体的部分前后
各添加一个
星号(asterisks)或下划线(underscores)
为兼容考虑,请使用星号(asterisks)
*斜体*
斜体
斜体加粗
在需要加粗的部分前后
各添加三个
星号(asterisks)或下划线(underscores)
为兼容考虑,请使用星号(asterisks)
***斜体加粗***
斜体加粗
引用
要创建块引用,请在段落前添加一个 >
符号
> 块引用
块引用
嵌套块引用
> 块引用
> 块引用
块引用
块引用
列表
有序列表
在行头添加一个数字和一个英文句点,然后空格。数字不必按数学顺序排列,但是列表应当以数字 1 起始
- 第一
- 第二
- 第三
无序列表
添加破折号 (-)、星号 (*) 或加号 (+) ,然后空格
- 一花
- 二乃
- 三玖
- 四叶
- 五月
嵌套列表
在列表项之下,输入数字 英文句点
或 -
、 +
、 -
,然后输入 Tab 键缩进
1. 五等分的花嫁
- 一花
- 二乃
- 五等分的花嫁
1. 三玖
2. 四叶
3. 五月
- 五等分的花嫁
- 一花
- 二乃
- 五等分的花嫁
- 三玖
- 四叶
- 五月
代码块
单行
将单行代码放入两个反引号``中
`print("Hello World!")`
print("Hello World!")
多行
代码块之前和之后的行上使用三个反引号**```**或三个波浪号~ ~ ~,然后在后面跟上代码语言
print("Hello World!")
math公式
行内公式
在$ $
之中填写公式
$...$
$e^{x^2}\neq{e^x}^2$
$e^{x^2}\neq{e^x}^2$
块公式
在$$ $$
中填写公式
$$...$$
$$e^{x^2}\neq{e^x}^2$$
$$H(D_2) = -(\frac{2}{4}\ log_2 \frac{2}{4} + \frac{2}{4}\ log_2 \frac{2}{4}) = 1$$
$$e^{x^2}\neq{e^x}^2$$
$$H(D_2) = -(\frac{2}{4}\ log_2 \frac{2}{4} + \frac{2}{4}\ log_2 \frac{2}{4}) = 1$$
矩阵
$$
\begin{pmatrix}
1 & a_1 & a_1^2 & \cdots & a_1^n \\
1 & a_2 & a_2^2 & \cdots & a_2^n \\
\vdots & \vdots & \vdots & \ddots & \vdots \\
1 & a_m & a_m^2 & \cdots & a_m^n \\
\end{pmatrix}
$$
$$
\begin{pmatrix}
1 & a_1 & a_1^2 & \cdots & a_1^n \
1 & a_2 & a_2^2 & \cdots & a_2^n \
\vdots & \vdots & \vdots & \ddots & \vdots \
1 & a_m & a_m^2 & \cdots & a_m^n \
\end{pmatrix}
$$
行列式
$$
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\
\frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\
\end{vmatrix}
$$
$$
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix}
\mathbf{i} & \mathbf{j} & \mathbf{k} \
\frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \
\frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \
\end{vmatrix}
$$
分割线
在单独一行上使用三个或多个星号 (***
)、破折号 (---
) 或下划线 (___
) ,然后回车
为了兼容性,请在分隔线的前后均添加空白行
***
---
___
删除线
~~明天开始努力~~ 现在开始!
明天开始努力 现在开始!
链接
链接名放在中括号内,链接地址放在后面的括号中,链接 title 可选
超链接语法:[超链接显示名](超链接地址 "超链接title")
[loyehのblog](https://lo-y-eh.github.io)
这是 loyeh の blog
title
链接 title 是当鼠标悬停在链接上时会出现的文字,是可选的,它放在圆括号中链接地址后面,跟链接地址之间以空格分隔
[Markdown语法](https://markdown.com.cn)
[markdown 官方文档](Markdown 官方教程 “最好的 markdown 教程”)
网址和 Email 地址
使用尖括号可以很方便地把 URL 或者 email 地址变成可点击的链接
<https://markdown.com.cn>
<fake@example.com>
带格式化的链接
不同的 Markdown 应用程序处理 URL 中间的空格方式不一样。为了兼容,请尽量使用%20 代替空格
强调链接, 在链接语法前后增加星号
This is the *[Markdown Guide](https://www.markdownguide.org)*.
This is the Markdown Guide
要将链接表示为代码,请在方括号中添加反引号
See the section on [`code`](#code)
See the section on
code
.
引用类型链接
引用样式链接是一种特殊的链接,它使 URL 在 Markdown 中更易于显示和阅读
参考样式链接分为两部分:与文本保持内联的部分以及存储在文件中其他位置的部分,以使文本易于阅读
链接的第一部分格式
引用类型的链接的第一部分使用两组括号进行格式设置。第一组方括号包围应显示为链接的文本。第二组括号显示了一个标签,该标签用于指向您存储在文档其他位置的链接。
尽管不是必需的,可以在第一组和第二组括号之间包含一个空格。第二组括号中的标签不区分大小写,可以包含字母,数字,空格或标点符号。
以下示例格式对于链接的第一部分效果相同:
[hobbit-hole][1]
[hobbit-hole] [1]
链接的第二部分格式
引用类型链接的第二部分使用以下属性设置格式:
- 放在括号中的标签,其后紧跟一个冒号和至少一个空格(例如
[label]:
)。 - 链接的 URL,可以选择将其括在尖括号中。
- 链接的可选标题,可以将其括在双引号,单引号或括号中。
以下示例格式对于链接的第二部分效果相同:
[1]: https://en.wikipedia.org/wiki/Hobbit#Lifestyle
[1]: https://en.wikipedia.org/wiki/Hobbit#Lifestyle "Hobbit lifestyles"
[1]: https://en.wikipedia.org/wiki/Hobbit#Lifestyle 'Hobbit lifestyles'
[1]: https://en.wikipedia.org/wiki/Hobbit#Lifestyle (Hobbit lifestyles)
[1]: <https://en.wikipedia.org/wiki/Hobbit#Lifestyle> "Hobbit lifestyles"
[1]: <https://en.wikipedia.org/wiki/Hobbit#Lifestyle> 'Hobbit lifestyles'
[1]: <https://en.wikipedia.org/wiki/Hobbit#Lifestyle> (Hobbit lifestyles)
可以将链接的第二部分放在 Markdown 文档中的任何位置。有些人将它们放在出现的段落之后,有些人则将它们放在文档的末尾(例如尾注或脚注)
页面内跳转
跳转到标题:格式
[自定义名称](#id)
,比如跳转到上面的标题
,则使用[跳转到标题](#标题)
,跳转到标题自由跳转:上述跳转有很大的局限性,如果想跳转到一个不是标题的位置(比如下面的竹子图片),则需要使用HTML语法在该位置附近自定义一个
锚
,实现自由跳转。
在图片的附近添加一个锚点
<span id="锚点"></span>
然后通过以下语句实现跳转
[页内自由跳转](#示例图)
图片
要添加图像,请使用感叹号 (!
),然后在方括号增加替代文本,图片链接放在圆括号里,括号里的链接后可以增加一个可选的图片标题文本。
插入图片 Markdown 语法代码:![图片alt](图片链接 "图片title")
。
对应的 HTML 代码:<img src="图片链接" alt="图片alt" title="图片title">
![这是图片](https://cdn.jsdelivr.net/gh/Lo-Y-eH/image@main/image/202402042011206.webp "Magic Gardens")
链接图片
给图片增加链接,请将图像的 Markdown 括在方括号中,然后将链接添加在圆括号中。
[![竹子图片](/assets/img/bamboo.jpg "bamboo")](https://cdn.jsdelivr.net/gh/Lo-Y-eH/image@main/image/202310012338379.webp)
转义字符
以下字符都可以通过反斜杠字符达到转义目的
character |
---|
\ |
` |
** |
_ |
{} |
[] |
() |
# |
+ |
- |
. |
! |
| |
内嵌 HTML 标签
对于 Markdown 涵盖范围之外的标签,都可以直接在文件里面用 HTML 本身。如需使用 HTML,不需要额外标注这是 HTML 或是 Markdown,只需 HTML 标签添加到 Markdown 文本中即可。
行级內联标签
HTML 的行级內联标签如 <span>
、<cite>
、<del>
不受限制,可以在 Markdown 的段落、列表或是标题里任意使用。依照个人习惯,甚至可以不用 Markdown 格式,而采用 HTML 标签来格式化。例如:如果比较喜欢 HTML 的 <a>
或 <img>
标签,可以直接使用这些标签,而不用 Markdown 提供的链接或是图片语法。当你需要更改元素的属性时(例如为文本指定颜色或更改图像的宽度),使用 HTML 标签更方便些。
HTML 行级內联标签和区块标签不同,在內联标签的范围内, Markdown 的语法是可以解析的。
This **word** is bold. This <em>word</em> is italic.
渲染效果如下:
This word is bold. This word is italic.
区块标签
区块元素 ── 比如 <div>
、<table>
、<pre>
、<p>
等标签,必须在前后加上空行,以便于内容区分。而且这些元素的开始与结尾标签,不可以用 tab 或是空白来缩进。Markdown 会自动识别这区块元素,避免在区块标签前后加上没有必要的 <p>
标签。
例如,在 Markdown 文件里加上一段 HTML 表格:
This is a regular paragraph.
<table>
<tr>
<td>Foo</td>
</tr>
</table>
This is another regular paragraph.
This is a regular paragraph.
Foo |
This is another regular paragraph.
请注意,Markdown 语法在 HTML 区块标签中将不会被进行处理。例如,你无法在 HTML 区块内使用 Markdown 形式的*强调*
。
HTML 用法最佳实践
出于安全原因,并非所有 Markdown 应用程序都支持在 Markdown 文档中添加 HTML。如有疑问,请查看相应 Markdown 应用程序的手册。某些应用程序只支持 HTML 标签的子集。
对于 HTML 的块级元素 <div>
、<table>
、<pre>
和 <p>
,请在其前后使用空行(blank lines)与其它内容进行分隔。尽量不要使用制表符(tabs)或空格(spaces)对 HTML 标签做缩进,否则将影响格式。
在 HTML 块级标签内不能使用 Markdown 语法。例如 <p>italic and **bold**</p>
将不起作用。
扩展语法
基本语法主要是为了应付大多数情况下的日常所需元素,但对于某些人来说还不够,这就是扩展语法的用武之地
前情提要
可用性
并非所有Markdown应用程序都支持扩展语法元素。您需要检查您的应用程序所使用的轻量级标记语言是否支持您要使用的扩展语法元素。如果没有,那么仍然有可能在Markdown处理器中启用扩展。
轻量标记语言
有几种轻量级标记语言是Markdown的超集。它们包含Gruber的基本语法,并通过添加其他元素(例如表,代码块,语法突出显示,URL自动链接和脚注)在此基础上构建。许多最受欢迎的Markdown应用程序使用以下轻量级标记语言之一:
Markdown 处理器
有许多Markdown处理器可用,它们中的许多允许您添加启用扩展语法元素的扩展。查看您所使用处理器的文档以获取更多信息。
表格
添加表格,使用三个或多个连字符(---
)创建每列的标题,并使用管道(|
)分隔每列。
| Syntax | Description |
| ----------- | ----------- |
| Header | Title |
| Paragraph | Text |
Syntax | Description |
---|---|
Header | Title |
Paragraph | Text |
单元格宽度可以变化,如下所示。呈现的输出将看起来相同。
| Syntax | Description |
| --- | ----------- |
| Header | Title |
| Paragraph | Text |
Syntax | Description |
---|---|
Header | Title |
Paragraph | Text |
对齐
您可以通过在标题行中的连字符的左侧,右侧或两侧添加冒号(:
),将列中的文本对齐到左侧,右侧或中心。
| Syntax | Description | Test Text |
| :--- | :----: | ---: |
| Header | Title | Here's this |
| Paragraph | Text | And more |
Syntax | Description | Test Text |
---|---|---|
Header | Title | Here’s this |
Paragraph | Text | And more |
表格中的文字
可以在表格中设置文本格式。例如,可以添加链接,单行代码(仅反引号 `` )和强调。
不能添加标题,块引用,列表,水平规则,图像或HTML标签。
表中转义 “|”
可以使用表格的HTML字符代码(|
)在表中显示竖线(|
)字符。
脚注
脚注使您可以添加注释和参考,而不会使文档正文混乱。当您创建脚注时,带有脚注的上标数字会出现在您添加脚注参考的位置。读者可以单击链接以跳至页面底部的脚注内容。
要创建脚注参考,请在方括号([^1]
)内添加插入符号和标识符。标识符可以是数字或单词,但不能包含空格或制表符。标识符仅将脚注参考与脚注本身相关联-在输出中,脚注按顺序编号。
在括号内使用另一个插入符号和数字添加脚注,并用冒号和文本([^1]: My footnote.
)。您不必在文档末尾添加脚注。您可以将它们放在除列表,块引号和表之类的其他元素之外的任何位置。
这是一个简单的脚注,[^1]
[^1]: 这是第一个脚注
这是一个更长的脚注,[^bignote]
[^bignote]: Here's one with multiple paragraphs and code.
Indent paragraphs to include them in the footnote.
`{ my code }`
Add as many paragraphs as you like.
这是一个简单的脚注,^1
这是一个更长的脚注,[^bignote]
[^bignote]: Here’s one with multiple paragraphs and code.
Indent paragraphs to include them in the footnote.
`{ my code }`
Add as many paragraphs as you like.
脚注问题修复:[hexoMatery] 玩转 Markdown | SeaYJ’s Blog
标题ID
许多Markdown处理器支持标题
自定义ID,一些Markdown处理器会自动添加它们。添加自定义ID允许你直接链接到标题并使用CSS对其进行修改。要添加自定义标题ID,请在与标题相同的行上用大括号括起该自定义ID。
### My Great Heading {#custom-id}
HTML看起来像这样:
<h3 id="custom-id">My Great Heading</h3>
链接到标题ID
通过创建带有数字符号(#
)和自定义标题ID的标准链接,可以链接到文件中具有自定义ID的标题。
Markdown | HTML | 预览效果 |
---|---|---|
[Heading IDs](#heading-ids) |
<a href="#heading-ids">Heading IDs</a> |
Heading IDs |
其他网站可以通过将自定义标题ID添加到网页的完整URL
任务表
创建任务列表,在任务列表项之前添加破折号-
和方括号[ ]
,并在[ ]
前面加上空格。要选择一个复选框,请在方括号[x]
之间添加 x
- [x] Write the press release
- [ ] Update the website
- [ ] Contact the media
- Write the press release
- Update the website
- Contact the media
Emoji
有两种方法可以将表情符号添加到Markdown文件中:将表情符号复制并粘贴到Markdown格式的文本中,或者键入emoji shortcodes。
###复制和粘贴表情符号
在大多数情况下,您可以简单地从Emojipedia 等来源复制表情符号并将其粘贴到文档中。许多Markdown应用程序会自动以Markdown格式的文本显示表情符号。从Markdown应用程序导出的HTML和PDF文件应显示表情符号。
Tip: 如果您使用的是静态网站生成器,请确保将HTML页面编码为UTF-8。.
###使用表情符号简码
一些Markdown应用程序允许您通过键入表情符号短代码来插入表情符号。这些以冒号开头和结尾,并包含表情符号的名称。
去露营了! :tent: 很快回来。
真好笑! :joy:
效果如下:
去露营了!⛺很快回来。
真好笑!😂
Note: 注意:您可以使用此表情符号简码列表,但请记住,表情符号简码因应用程序而异。
自动网址链接
许多Markdown处理器会自动将URL转换为链接。这意味着如果输入http://www.example.com,即使未[使用方括号](https://markdown.com.cn/basic-syntax/links.html),也会自动将其转换为链接。
http://www.example.com
呈现的输出如下所示:
禁用自动URL链接
如果不希望自动链接URL,则可以使用反引号来禁止
`http://www.example.com`
呈现的输出如下所示:
http://www.example.com