Markdown(以下简称MD) 是一种轻量级的标记语言,可用于在纯文本文档中添加格式化元素。Markdown 由 John Gruber 于 2004 年创建,如今已成为世界上最受欢迎的标记语言之一。
使用 Markdown 与使用 Word 类编辑器不同。在 Word 之类的应用程序中,单击按钮以设置单词和短语的格式,并且,更改立即可见。而 Markdown 与此不同,当你创建 Markdown 格式的文件时,可以在文本中添加 Markdown 语法,以指示哪些单词和短语看起来应该有所不同。
Markdown的文档后缀为.md、.markdown。
当你可以通过按下界面中的按钮来设置文本格式时,为什么还要使用 Markdown 来书写呢?使用 Markdown 而不是 word 类编辑器的原因有:
Markdown 入门的最佳方式就是多使用它。由于有大量免费工具的存在,上手 Markdown 是很方便的。比较遗憾的一点是各平台可能采用不同语言实现的 Markdown 解析引擎,或采用同一解析引擎的不同版本,而且可能有不同程度的定制与扩展,这导致在不同平台上使用 Markdown 写作时体验并不完全一致。不过幸好对于大家公认的一些标准语法,各家都是支持的。
你甚至都不需要下载任何程序,就可以使用在线 Markdown 编辑器 来编写 Markdown。进入其站点就可以开始在左侧窗格中书写了。渲染后的文档在右侧窗格预览。
推荐的一些Markdown文档创作工具:
在使用 Markdown 格式书写时,文本内容存储在带有 .md
或 .markdown
扩展名的纯文本文件中。那然后呢?你的 Markdown 格式的文件如何转换为 HTML 或可打印的文档呢?
简单来说,你需要一个能够处理 Markdown 文件的 Markdown 应用程序。有许多应用程序可供选择,从简单的脚本到类似于 Microsoft Word 的桌面应用程序。尽管它们在视觉上有所不同,但所有应用程序都执行相同的操作。像 在线 Markdown 编辑器 一样,它们都是将 Markdown 格式的文本转换为 HTML,以便可以在 Web 浏览器中显示。
Markdown 应用程序使用一种称为 Markdown 处理器(也通常称为“解析器”或“实现”)的东西将获取到的 Markdown 格式的文本输出为 HTML 格式。此时,可以在 Web 浏览器中查看你的文档,或者将其与样式表组合并打印。你可以在下图看到此过程的直观表示。
注意: Markdown 应用程
序和处理器是两个单独的组件。为了简洁起见,在下图中,我将它们组合为一个元素(即 “Markdown应用程序”)。
总而言之,这是一个四步的过程:
.md
或 .markdown
扩展名。从你的角度来看,该过程将根据你使用的应用程序的不同而有所不同。例如,在线 Markdown 编辑器 本质上将第 1-3 步组合到一个单一、无缝的界面中,你要做的就是在左窗格中键入内容,然后转换结果就在右窗格中就神奇地出现了。但是,如果你使用的是其他工具(例如带有静态网站生成器的文本编辑器),则会发现该过程更为明显。
Markdown 速查表提供了所有 Markdown 语法元素的基本解释。
这些是 John Gruber 的原始设计文档中列出的元素。所有 Markdown 应用程序都支持这些元素。
1.要创建标题,请在单词或短语前面添加井号 (#
) 。#
的数量代表了标题的级别。
# H1
## H2
### H3
2.还可以在文本下方添加任意数量的 == 号来标识一级标题,或者 – 号来标识二级标题。
Heading level 1
===============
Heading level 2
---------------
Markdown支持三种字体:斜体文本、粗体文本、*粗斜体文本*,每种字体都有两种书写方式:
斜体(Italic) *斜体文本* _斜体文本_
粗体(Bold) **粗体文本** __粗体文本__
粗斜体 ***粗斜体文本*** ___粗斜体文本___
)。要创建块引用,请在段落前添加一个 >
符号。
> Dorothy followed her through many of the beautiful rooms in her castle.
渲染效果如下所示:
Dorothy followed her through many of the beautiful rooms in her castle.
块引用可以包含多个段落。为段落之间的空白行添加一个 >
符号。
> Dorothy followed her through many of the beautiful rooms in her castle.
>
> The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.
渲染效果如下:
Dorothy followed her through many of the beautiful rooms in her castle.
The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.
块引用可以包含其他 Markdown 格式的元素。并非所有元素都可以使用,你需要进行实验以查看哪些元素有效。
> #### The quarterly results look great!
>
> - Revenue was off the chart.
> - Profits were higher than ever.
>
> *Everything* is going according to **plan**.
渲染效果如下:
The quarterly results look great!
- Revenue was off the chart.
- Profits were higher than ever.
Everything is going according to plan.
Markdown支持有序列表和无序列表。
要创建有序列表,请在每个列表项前添加数字并紧跟一个英文句点。数字不必按数学顺序排列,但是列表应当以数字 1 起始。
1. First item
2. Second item
3. Third item
1. Indented item
2. Indented item
4. Fourth item
渲染效果如下:
要创建无序列表,请在每个列表项前面添加破折号 (-)、星号 (*) 或加号 (+) 。缩进一个或多个列表项可创建嵌套列表。
- First item
- Second item
- Third item
- Indented item
- Indented item
- Fourth item
渲染效果如下:
在子列表中的选项添加四个空格:
1. 第一项:
- 第一项嵌套的第一个元素
- 第一项嵌套的第二个元素
2. 第二项:
- 第二项嵌套的第一个元素
- 第二项嵌套的第二个元素
要创建分隔线,请在单独一行上使用三个或多个星号 (***
)、破折号 (---
) 或下划线 (___
) ,并且不能包含其他内容。
***
---
_________________
链接文本放在中括号内,链接地址放在后面的括号中,链接title可选。
超链接Markdown语法代码:[超链接显示名](超链接地址 "超链接title")
这是一个链接 [Markdown语法](https://markdown.com.cn)。
渲染效果如下:
这是一个链接 Markdown语法。
强调链接, 在链接语法前后增加星号。 要将链接表示为代码,请在方括号中添加反引号。
I love supporting the **[EFF](https://eff.org)**.
This is the *[Markdown Guide](https://www.markdownguide.org)*.
See the section on [`code`](#code).
渲染效果如下:
I love supporting the EFF.
This is the Markdown Guide.
See the section on code
.
要添加图像,请使用感叹号 (!
), 然后在方括号增加替代文本,图片链接放在圆括号里,括号里的链接后可以增加一个可选的图片标题文本。
插入图片Markdown语法代码:![图片alt](图片链接 "图片title")
。
![alt text](image.jpg)
![这是图片](/assets/img/philly-magic-garden.jpg "Magic Gardens")
要添加表,请使用三个或多个连字符(---
)创建每列的标题,并使用管道(|
)分隔每列。您可以选择在表的任一端添加管道。
-----的数量可以影响单元格宽度
标题行的下一行可以设置对其方式,一个-
是左对齐:
Syntax | Description |
---|---|
Header | Title |
Paragraph | Text |
| Syntax | Description |
| ----------- | ----------- |
| Header | Title |
| Paragraph | Text |
要将单词或短语表示为代码,请将其包裹在反引号 (```) 中。
`System.out.println("Hello World");`
多行文本两端分别使用四个空格、一个tab或三个`包围,都可以实现多行代码块。
```
{
"firstName": "John",
"lastName": "Smith",
"age": 25
}
```
脚注使您可以添加注释和参考,而不会使文档正文混乱。当您创建脚注时,带有脚注的上标数字会出现在您添加脚注参考的位置。读者可以单击链接以跳至页面底部的脚注内容。
要创建脚注参考,请在方括号([^1]
)内添加插入符号和标识符。标识符可以是数字或单词,但不能包含空格或制表符。标识符仅将脚注参考与脚注本身相关联-在输出中,脚注按顺序编号。
在括号内使用另一个插入符号和数字添加脚注,并用冒号和文本([^1]: My footnote.
)。您不必在文档末尾添加脚注。您可以将它们放在除列表,块引号和表之类的其他元素之外的任何位置。
Here's a sentence with a footnote. [^1]
[^1]: This is the footnote.
许多Markdown处理器支持标题的自定义ID - 一些Markdown处理器会自动添加它们。添加自定义ID允许您直接链接到标题并使用CSS对其进行修改。要添加自定义标题ID,请在与标题相同的行上用大括号括起该自定义ID。
### My Great Heading {#custom-id}
通过创建带有数字符号(#
)和自定义标题ID的[标准链接]((/basic-syntax/links.html),可以链接到文件中具有自定义ID的标题。
其他网站可以通过将自定义标题ID添加到网页的完整URL(例如[Heading IDs](https://markdown.com.cn/extended-syntax/heading-ids.html#headid)
)来链接到标题。
term
: definition
文字添加删除线效果:我有删除线,在文字两端分别添加两个波浪线~~
:
~~The world is flat.~~
- [x] Write the press release
- [ ] Update the website
- [ ] Contact the media
呈现的输出如下所示:
markdown官网:https://markdown.com.cn/
term
: definition
文字添加删除线效果:我有删除线,在文字两端分别添加两个波浪线~~
:
~~The world is flat.~~
- [x] Write the press release
- [ ] Update the website
- [ ] Contact the media
呈现的输出如下所示:
markdown官网:https://markdown.com.cn/