Mobile wallpaper 1Mobile wallpaper 2Mobile wallpaper 3Mobile wallpaper 4
3031 字
15 分钟
Markdown 教程

Markdown 教程#

一个展示如何编写 Markdown 文件的示例。本文档集成了核心语法和扩展语法(GMF)。

块元素#

段落和换行#

段落#

HTML 标签: <p>

一个或多个空行。(空行是指只包含空格制表符的行。)

代码:

这会是 连在一起的。

这是第二个段落。 预览:


这会是 连在一起的。

这是第二个段落。


换行#

HTML 标签: <br />

在一行的结尾加上两个或更多空格

代码:

这不会 连在一起。 预览:


这不会 连在一起。


标题#

Markdown 支持两种标题样式:Setext 和 atx。

Setext 样式#

HTML 标签: <h1>, <h2>

使用任意数量的等号 (=) 作为 <h1> 的”下划线”,使用破折号 (-) 作为 <h2> 的”下划线”。

代码:

这是 H1#

这是 H2#

预览:


这是 H1#

这是 H2#


atx 样式#

HTML 标签: <h1>, <h2>, <h3>, <h4>, <h5>, <h6>

在行首使用 1-6 个井号 (#),对应 <h1> - <h6>

代码:

这是 H1#

这是 H2#

这是 H6#

预览:


这是 H1#

这是 H2#

这是 H6#

你也可以选择性地”关闭” atx 样式的标题。结尾的井号不需要与开头的井号数量匹配。

代码:

这是 H1#

这是 H2#

这是 H3#

预览:


这是 H1#

这是 H2#

这是 H3#


区块引用#

HTML 标签: <blockquote>

Markdown 使用电子邮件风格的 > 字符进行区块引用。最好对文本进行硬换行并在每一行前面放一个 >。

代码:

这是一个包含两个段落的区块引用。这是第一个段落。Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

这是第二个段落。Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing. 预览:


这是一个包含两个段落的区块引用。这是第一个段落。Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

这是第二个段落。Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.


Markdown 允许你偷懒,只在硬换行段落的第一行前面加上 >。

代码:

这是一个包含两个段落的区块引用。这是第一个段落。Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

这是第二个段落。Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing. 预览:


这是一个包含两个段落的区块引用。这是第一个段落。Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

这是第二个段落。Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse id sem consectetuer libero luctus adipiscing.


区块引用可以嵌套(例如,一个区块引用中包含另一个区块引用),通过添加额外的 > 层级来实现。

代码:

这是第一级引用。

这是嵌套的区块引用。

回到第一级。 预览:


这是第一级引用。

这是嵌套的区块引用。

回到第一级。


区块引用可以包含其他 Markdown 元素,包括标题、列表和代码块。

代码:

这是一个标题。#

  1. 这是第一个列表项。
  2. 这是第二个列表项。

这是一些示例代码:

return shell_exec("echo $input | $markdown_script");

预览:


这是一个标题。#

  1. 这是第一个列表项。
  2. 这是第二个列表项。

这是一些示例代码:

return shell_exec(“echo inputinput | markdown_script”);


列表#

Markdown 支持有序(编号)列表和无序(项目符号)列表。

无序列表#

HTML 标签: <ul>

无序列表使用星号 (*)加号 (+)减号 (-)

代码:

  • 红色
  • 绿色
  • 蓝色 预览:

  • 红色
  • 绿色
  • 蓝色

等同于:

代码:

  • 红色
  • 绿色
  • 蓝色 和:

代码:

  • 红色
  • 绿色
  • 蓝色

有序列表#

HTML 标签: <ol>

有序列表使用数字后面跟着句点:

代码:

  1. 小鸟
  2. 麦克海尔
  3. 帕里什 预览:

  1. 小鸟
  2. 麦克海尔
  3. 帕里什

有可能意外触发有序列表,通过写这样的内容:

代码:

  1. 多么美好的赛季。 预览:

  1. 多么美好的赛季。

你可以使用反斜杠转义 (\) 句点:

代码:

1986. 多么美好的赛季。 预览:


1986. 多么美好的赛季。


缩进#

区块引用#

要将区块引用放在列表项内,区块引用的 > 定界符需要缩进:

代码:

  • 一个包含区块引用的列表项:

    这是一个区块引用 在列表项内部。 预览:


  • 一个包含区块引用的列表项:

    这是一个区块引用 在列表项内部。


代码块#

要将代码块放在列表项内,代码块需要缩进两次 — 8 个空格两个制表符

代码:

  • 一个包含代码块的列表项:

    <代码在这里>

预览:


  • 一个包含代码块的列表项:

    <代码在这里>


嵌套列表#

代码:

  • A
    • A1
    • A2
  • B
  • C 预览:

  • A
    • A1
    • A2
  • B
  • C

代码块#

HTML 标签: <pre>

将代码块的每一行缩进至少 4 个空格1 个制表符

代码:

这是一个普通段落:

这是一个代码块。

预览:


这是一个普通段落:

这是一个代码块。#

代码块会一直持续到遇到没有缩进的行(或文章结尾)。

在代码块内部,& 符号 (&)尖括号 (< 和 >) 会自动转换为 HTML 实体。

代码:

<div class="footer">
&copy; 2004 Foo Corporation
</div>

预览:


---

接下来的”围栏代码块”和”语法高亮”是扩展功能,你可以使用另一种方式编写代码块。

围栏代码块#

只需用 ``` 包裹你的代码(如下所示),你就不需要缩进四个空格。

代码:

这是一个例子:

function test() {
console.log("注意到这个函数前面的空行了吗?");
}

预览:


这是一个例子:

function test() {
console.log("注意到这个函数前面的空行了吗?");
}

语法高亮#

在你的围栏代码块中,添加一个可选的语言标识符,我们将对其进行语法高亮显示(支持的语言)。

代码:

require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html

预览:


require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html

水平分割线#

HTML 标签: <hr /> 在一行上放置三个或更多连字符 (-)、星号 (*) 或下划线 (_)。你可以在连字符或星号之间使用空格。

代码:







预览:









表格#

HTML 标签: <table>

这是一个扩展。

使用竖线 (|) 分隔列,使用破折号 (-) 分隔表头,并使用冒号 (:) 进行对齐。

外层的竖线 (|) 和对齐方式是可选的。每个单元格至少需要3 个分隔符来分隔表头。

代码:

| 左对齐 | 居中对齐 | 右对齐 |
|:-------|:--------:|-------:|
|aaa |bbb |ccc |
|ddd |eee |fff |
A列 | B列
---|---
123 |456
A列 |B列
--|--
12 |45

预览:


左对齐居中对齐右对齐
aaabbbccc
dddeeefff
A列B列
123456
A列B列
1245

行内元素#

链接#

HTML 标签: <a>

Markdown 支持两种链接样式:行内式和参考式。

行内式#

行内链接格式如下:[链接文本](URL "标题")

标题是可选的。

代码:

这是一个行内链接示例

这个链接没有标题属性。 预览:


这是一个行内链接示例

这个链接没有标题属性。


如果你引用的是同一服务器上的本地资源,你可以使用相对路径:

代码:

详情请参阅我的关于页面。 预览:


详情请参阅我的关于页面。


参考式#

你可以预定义链接引用。格式如下:[id]: URL "标题"

标题也是可选的。然后你引用该链接的格式如下:[链接文本][id]

代码:

这是一个参考式链接示例。 预览:


这是一个参考式链接示例


即:

  • 包含链接标识符的方括号(不区分大小写,可以使用最多三个空格从左边界缩进);
  • 后跟一个冒号;
  • 后跟一个或多个空格(或制表符);
  • 后跟链接的 URL;
  • 链接 URL 可以选择用尖括号包围。
  • 可以选择后跟链接的标题属性,用双引号或单引号括起来,或者用括号括起来。

以下三个链接定义是等效的:

代码:

使用一对空的方括号,链接文本本身被用作名称。

代码:

Google 预览:


Google


强调#

HTML 标签: <em>, <strong>

Markdown 将星号 (*)下划线 (_) 视为强调的指示符。单个定界符将是 <em>双定界符将是 <strong>

代码:

单个星号

单个下划线

双星号

双下划线 预览:


单个星号

单个下划线

双星号

双下划线


但是,如果你用空格包围 * 或 _,它将被视为字面意义上的星号或下划线。

你可以用反斜杠转义它:

代码:

*这段文字被字面意义上的星号包围* 预览:


*这段文字被字面意义上的星号包围*


行内代码#

HTML 标签: <code>

反引号 (`) 包裹它。

代码:

使用 printf() 函数。 预览:


使用 printf() 函数。


要在代码跨度中包含一个字面意义上的反引号字符,你可以使用多个反引号作为开头和结尾的定界符:

代码:

这里有一个字面意义上的反引号 (`)。 预览:


这里有一个字面意义上的反引号 (`)。


包围代码跨度的反引号定界符可以包含空格 — 开头后面一个,结尾前面一个。这允许你在代码跨度的开头或结尾放置字面意义上的反引号字符:

代码:

代码跨度中的单个反引号:`

代码跨度中被反引号包围的字符串:`foo` 预览:


代码跨度中的单个反引号:`

代码跨度中被反引号包围的字符串:`foo`


图片#

HTML 标签: <img />

Markdown 使用一种旨在类似于链接语法的图片语法,允许两种样式:行内式和参考式。

行内式#

行内图片语法如下:![替代文本](URL "标题")

标题是可选的。

代码:

替代文本

替代文本 预览:


替代文本

替代文本


即:

  • 一个感叹号:!;
  • 后跟一对方括号,包含图片的 alt 属性文本;
  • 后跟一对圆括号,包含图片的 URL 或路径,以及一个可选的双引号或单引号括起来的标题属性。

参考式#

参考式图片语法如下:![替代文本][id]

代码:

替代文本 预览:


替代文本“可选的标题属性”


删除线#

HTML 标签: <del>

这是一个扩展。

GFM 增加了删除线文本的语法。

代码:

~~错误的文本。~~

预览:


错误的文本。


其他#

自动链接#

Markdown 支持一种快捷方式,用于为 URL 和电子邮件地址创建”自动”链接:只需用尖括号包围 URL 或电子邮件地址。

代码:

http://example.com/

address@example.com 预览:


http://example.com/

address@example.com


GFM 会自动链接标准 URL。

代码:

https://github.com/emn178/markdown

预览:


https://github.com/emn178/markdown


反斜杠转义#

Markdown 允许你使用反斜杠转义来生成原本在 Markdown 格式化语法中具有特殊含义的字面量字符。

代码:

*字面量星号* 预览:


*字面量星号*


Markdown 为以下字符提供反斜杠转义:

代码:

\ 反斜杠 ` 反引号

  • 星号 _ 下划线 {} 花括号 [] 方括号 () 圆括号

井号#

  • 加号
  • 减号(连字符) . 点 ! 感叹号

行内 HTML#

对于 Markdown 语法未涵盖的任何标记,你可以直接使用 HTML 本身。无需预先说明或划定界限来表明你正在从 Markdown 切换到 HTML;你只需使用标签。

代码:

这是一个常规段落。

Foo

这是另一个常规段落。 预览:


这是一个常规段落。

Foo

这是另一个常规段落。


请注意,Markdown 格式化语法在块级 HTML 标签内不会被处理

与块级 HTML 标签不同,Markdown 语法在行内级标签内会被处理

代码:

有效

**无效**
预览:

有效

**无效**
Markdown 教程
https://github.com/emn178/markdown
作者
emn178
发布于
2024-05-20
许可协议
未许可

部分信息可能已经过时