Markdown的基本语法
标题
在标题文字之前添加“#
”,井号的数量对应着标题的等级,从1到6为从大到小,依次对应HTML中的标签 <h1>
到 <h6>
。
1 | # Heading level 1 |
效果请见文章内的标题。
段落
Markdown使用空白行将文本分为两个段落,对应HTML的 <p>
标签。
1 | I really like using Markdown. |
I really like using Markdown.
I think I’ll use it to format all of my documents from now on.
换行
在一行文本的末尾添加两个以上空格并回车,对应HTML中的 <br>
标签
1 | This is the first line. |
This is the first line.
And this is the second line.
强调
粗体(Bold)
在需要强调的文本前后添加两个星号“**
”或者下划线“__
”,对应HTML中的 <strong>
标签。
1 | **Bold text** with asterisks. |
Bold text with asterisks.
Bold text with underscores.
斜体(Italic)
再需要倾斜的文本前后添加一个星号“*
”或者下划线“_
”,对应HTML中的 <em>
标签。
1 | Italicized text is the *cat's meow*. |
Italicized text is the cat’s meow.
Italicized text is the cat’s meow.
粗体(Bold)+ 斜体(Italic)
如果需要同时对同一段文本使用粗体和斜体,可以在强调文本的前后添加三个星号“*
”或者下划线“_
”,或者混合使用。
1 | This text is ***really important***. |
This text is really important.
This text is really important.
This text is really important.
This text is really important.
引用
在引用文本前使用右尖括号“>
”,符号可以重复,实现多级引用的效果,同时引用的内容也可以兼容其他元素效果
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.
列表
有序列表
在每个列表项前添加数字并紧跟一个英文句点,对应HTML的 <ol>
和 <li>
。数字不必按数学顺序排列,但是列表应当以数字 1 起始。通过使用缩进可以形成多级列表的样式。
1 | 1. First item |
- First item
- Second item
- Third item
- Indented item
- Indented item
- Fourth item
无序列表
在每个列表项前面添加破折号“-
”、星号“*
” 或加号“+
”。缩进一个或多个列表项可创建嵌套列表。对应HTML的 <ul>
和 <li>
1 | - First item |
- First item
- Second item
- Third item
- Indented item
- Indented item
- Fourth item
代码、代码块
要将单词或短语表示为代码,则在单词前后添加反引号“`”。如果需要在代码语句中使用反引号,则需要在代码前后添加两个反引号“``”。如果需要创建代码块,则需要在代码块前后添加三个反引号“```”。许多Markdown处理器都支持受围栏代码块的语法突出显示。使用此功能,您可以为编写代码的任何语言添加颜色突出显示。要添加语法突出显示,请在受防护的代码块之前的反引号旁边指定一种语言。
1 | At the command prompt, type `nano`. |
At the command prompt, type nano
.
Use `code` in your Markdown file.
1 | public class Main { |
分隔线
要创建分隔线,请在单独一行上使用三个或多个星号 “***
”、破折号 “---
” 或下划线 “___
”,并且不能包含其他内容。
1 | *** |
以上三个分隔线的渲染效果是一样的:
链接
跳转链接
链接文本放在中括号内,链接地址放在后面的括号中,链接title可选,格式为:[超链接显示名](超链接地址 "超链接title")
,对应的HTML代码为:<a href="超链接地址" title="超链接title">超链接显示名</a>
。单独使用尖括号“<>
”将链接括起来可以使链接可点击跳转。同时,也可以为链接运用其他的格式样式。
注意:不同的 Markdown 应用程序处理URL中间的空格方式不一样。为了兼容性,请尽量使用 %20
代替空格。
1 | 这是一个链接:[百度](https://www.baidu.com "点击打开百度搜索") |
这是一个链接:百度
这是一个链接:https://www.baidu.com
引用链接
引用样式链接是一种特殊的链接,它使URL在Markdown中更易于显示和阅读。引用链接分为两部分:与文本保持内联的部分(格式为:[content][label]
)以及存储在文件中其他位置的部分(格式为:[label]:url
),以使文本易于阅读。第一部分的两个标签之间可以添加空格,尽管这并非必须的,而第二部分的内容并不会被渲染在页面上。
1 | Markdown是一种[轻量级标记语言][1],创始人为约翰·格鲁伯(John Gruber)。 它允许人们使用易读易写的[纯文本格式][2]编写文档,然后转换成有效的 [XHTML][3](或者HTML)文档。这种语言吸收了很多在[电子邮件][4]中已有的纯文本标记的特性。——百度百科 |
图片
显示图片
插入图片Markdown语法代码:![图片alt](图片链接 "图片title")
,对应的HTML代码:<img src="图片链接" alt="图片alt" title="图片title">
。
1 | ![Markdown Icon](https://s1.vika.cn/space/2023/07/18/23f7e9d3aec747d1b180518ad8a026e7 "这是Markdown的Icon") |
链接图片
为图片添加连接也即将图片与链接的Markdown样式结合起来。
转义字符
格式化字符的转义
要显示原本用于格式化 Markdown 文档的字符,请在字符前面添加反斜杠字符 \ 。
1 | * 如果没有转义字符,这个句子会被显示成无序列表。 |
- 如果没有转义字符,这个句子会被显示成无序列表。
* 如果没有转义字符,这个句子会被显示成无序列表。
以下列出的字符都可以通过使用反斜杠字符从而达到转义目的。
字符 | 名称 | 字符 | 名称 |
---|---|---|---|
\ | 反斜杠 | ` | 反引号 |
* | 星号 | _ | 下划线 |
{} | 大括号 | [] | 中括号 |
() | 小括号 | # | 井号 |
+ | 加号 | - | 减号 |
. | 句点 | ! | 感叹号 |
| | 竖线 |
注意:如果需要在表格中使用竖线符号“|”,需要替换为实体编号“|
”,如果直接使用反斜杠转义(\|
),则会显示为反斜杠“\”。
特殊字符的转义
在HTML中,有一些字符需要特殊处理才能显示出来,在下方列出的是需要使用实体代码替代的字符。
此表格内容来自:CSDN博主「hitrjj」的原创文章)
显示结果 | 描述 | 输入 | 实体编号 |
---|---|---|---|
空格 | |
  |
|
< | 小于号 | < |
< |
> | 大鱼号 | > |
> |
& | 和号 | & |
& |
" | 引号 | " |
" |
' | 单引号 | ' (IE不支持) |
' |
¢ | 分 | ¢ |
¢ |
£ | 镑 | £ |
£ |
¥ | 日元 | ¥ |
¥ |
§ | 节 | § |
§ |
© | 版权 | © |
© |
® | 注册商标 | ® |
® |
× | 乘号 | × |
× |
÷ | 除号 | ÷ |
÷ |
注意:
尽管Markdown允许直接使用这些符号,并且在一定情况下会帮你级自动转义,但如果需要将带有特殊符号的链接放入 <a>
标签的 href
属性中,Markdown就不会自动转换,这时候就需要将链接中所有上表所示内容替换为其对应编号。例如网址:
1 | http://aaa.bbb.com/images?参数A&参数B |
则需要修改为:
1 | http://aaa.bbb.com/images?参数A&参数B |
内嵌HTML标签
行级内联标签
HTML 的行级內联标签如 <span>
、<cite>
、<del>
不受限制,可以在 Markdown 的段落、列表或是标题里任意使用。依照个人习惯,甚至可以不用 Markdown 格式,而采用 HTML 标签来格式化。例如:如果比较喜欢 HTML 的 <a>
或 <img>
标签,可以直接使用这些标签,而不用 Markdown 提供的链接或是图片语法。
1 | This **word** is bold. |
This word is bold.
This word is italic.
区块标签
区块元素──比如 <div>
、<table>
、<pre>
、<p>
等标签,必须在前后加上空行,以便于内容区分。而且这些元素的开始与结尾标签,不可以用 tab 或是空格来缩进。Markdown 会自动识别这区块元素,避免在区块标签前后加上没有必要的 <p>
标签。
注意:Markdown 语法在 HTML 区块标签中将不会被进行处理。例如,你无法在 HTML 区块内使用 Markdown 形式的 *强调*
。
1 | This is a regular paragraph. |
This is a regular paragraph.
table |
This is another regular paragraph.