入门基础
标题与段落
使用 # 表示标题(1-6 级)。备选语法用 === 表示 H1,--- 表示 H2。段落之间需要空行分隔。Markdown 的设计初衷是作为纯文本也具有良好的可读性。
# Heading 1
## Heading 2
### Heading 3
#### Heading 4
##### Heading 5
###### Heading 6
Alternative Heading 1
=====================
Alternative Heading 2
---------------------
This is a paragraph. Just write
plain text. Leave a blank line
between paragraphs.换行
行尾两个空格或反斜杠可创建硬换行(<br>)。没有这些标记时,单个换行符是软换行,会合并为一个段落。始终用空行分隔段落。
First line
Second line (two trailing spaces above)
Or use a backslash at end of line\
to force a line break.
Soft wrap without break:
just continue on the next line
and it joins into one.注释
Markdown 没有官方注释语法,但 HTML 注释(<!-- -->)在大多数渲染器中可用,且在输出中 隐藏。[//]: # 技巧使用空链接引用来添加备注。注释在源码中仍然可见。
<!-- HTML comments work in most Markdown -->
[//]: # (This is a comment)
[//]: # "Another comment style"
<!--
Multi-line comment
not rendered in output
-->空 白与缩进
四个前导空格会将文本变为代码块——注意避免意外缩进。缩进对嵌套列表很重要(每级 2-4 个空格)。制表符通常被视为 4 个空格。保持空格使用一致以避免不同解析器的渲染问题。
Paragraph one.
This is an indented code block
because of 4 spaces.
> Quoted text needs > prefix.
Three spaces is just text
(less than 4).水平分隔线
三个或更多的连字符、星号或下划线创建水平分隔线(<hr>)。连字符最常见。字符间允许空格。为清晰起见,在水平线前后留空行。避免将 ---(分隔线)与 #(标题)混淆。
---
***
___
* * *
Text above
---
Text below文本格式化
粗体与强调
双星号或双下划线产生粗体(<strong>)。推荐使用星号,因为下划线在单词中间不起作用(snake_case)。可以在粗体中嵌套其他强调。HTML <strong> 标签作为备选方案。
**bold text**
__also bold__
**bold with *italic* inside**
<strong>HTML bold also works</strong>
**bold**斜体与强调
单星号或单下划线创建斜体(<em>)。星号在单词中间有效;下划线将单词内部的下划线视为字面量(所以 no_italic_here 不会斜体)。使用 <em> 作为备选。斜体用于强调,不仅仅是样式。
*italic text*
_also italic_
*italic*
<em>HTML italic</em>
normal *italic* normal粗体+斜体组合
三星号/下划线同时产生粗体和斜体。也可以嵌套使用:粗体包含斜体或反之。渲染顺序不影响结果,但应保持一致以提高可读性。
***bold and italic***
___also both___
**_bold and italic_**
*__bold and italic__*
combine **bold** and *italic*删除线
双波浪号(~~)创建删除线,是 GitHub Flavored Markdown 的一部分,现已广泛支持。HTML <del> 和 <s> 标签是等效的备选方案。标准(原始)Markdown 不包含删除线。
~~strikethrough~~
~~crossed out text~~
<del>HTML delete</del>
<s>HTML strikethrough</s>
~~done~~ and ~~pending~~标记/高亮
双等号(==)高亮是某些解析器支持的扩展(不在 GFM 核心中)。HTML <mark> 标签通用支持。少量使用高亮来吸引对关键术语的注意——过度使用会降低效果。
==highlighted text==
<mark>HTML mark</mark>
This is ==important== text.
Compare **bold**, *italic*, ==mark==.下标与上标
波浪号(下标)和脱字符(上标)语法(~ ~ 和 ^ ^)是不在标准 Markdown 或 GFM 中的扩展——由 Pandoc、R Markdown 等支持。为通用支持,使用 HTML <sub> 和 <sup> 或 Unicode 字符。
H~2~O is water
E = mc^2^
x^2^ + y^2^ = r^2^
1st^st^ January
CO~2~ emissions列表
无序列表
使用 -、* 或 + 作为无序列表项——选择一种并保持一致(- 最常见)。缩进 2-4 个空格创建嵌套项。在同一列表中混用标记符可能在某些解析器中导致问题。每行一项。
- item one
- item two
- item three
* asterisk works too
+ plus sign also works
- sub-item (indent 2 spaces)
- another sub-item有序列表
有序列表使用数字后跟句点。实际数字不需要连续——Markdown 会重新编号。要从特定数字开始,先使用该数字(10. 从 10 开始)。对所有项使用 1. 可自动编号。
1. first
2. second
3. third
1. auto-numbered
1. still increments
1. third item
10. starts at 10
11. next嵌套列表
嵌套列表项缩进 2-4 个空格(混合类型时 4 个最安全)。可以在不同层级混合有序和无序列表。深层嵌套(3+ 级)会降低可读性——考虑重构。保持缩进一致。
1. top level
- nested unordered
- second nested
2. back to top
1. nested ordered
2. another
3. third top
- fruits
- apple
- granny smith
- banana任务列表
任务列表语法(- [x] 和 - [ ])是 GitHub Flavored Markdown 扩展。复选框在 GitHub/GitLab 上渲染为可交互。支持有序和无序列表。非常适合 README、问题跟踪器和进度跟踪。
- [x] completed task
- [ ] incomplete task
- [ ] another todo
1. [x] done
2. [ ] not done
- [x] Write the docs
- [ ] Review PR
- [ ] Deploy松散列表与紧凑列表
如果列表项之间用空行分隔,列表是'松散'的(每项包裹在 <p> 中)。没有空行则是'紧凑'的(无 <p> 包裹)。这影响 HTML 输出的间距。有意添加空行来控制段落包裹。
- tight item
- tight item
- tight item
- loose item
- loose item
- loose item带多段落的列表
要在列表项中包含多个段落或块元素,将续行缩进 4 个空格(或与列表标记内容对齐)。空行分隔子块。这对复杂列表结构至关重要,但容易出错。
- First item
Second paragraph of first item.
- Second item
> A blockquote inside a list item.
>
> Must be indented to align.
- Third item链接
行内链接
行内链接使用 [文本](URL)。引号中的可选标题在悬停时显示为工具提示。相对链接用于站内导航。锚点链接(#id)跳转到匹配 id 的元素。URL 不能包含空格——使用 %20 表示空格。