Markdown: 基础

Markdown 格式化语法之要旨 Markdown 使用起来是什么样子?这个页面提供了一点概观性的介绍。而更完整详尽的文档在语法页面中,那儿包括了所有特性的说明——其实在看过几个 Markdown 的例子后你就足以了解大要了。所以,下面的例子就用处理前后结果的对比来展示 Markdown 的用法。 在阅读的同时试一试也是很有必要的,Dingus 这个程序可以让你在线输入用 Markdown 标记的文本,并将它转换成 XHTML。 注意:这份文档本身也是用 Markdown 写就的。你可以通过这个链接找到它的源代码。 段落,标题,Blockquotes 所谓段落不过是一行或者数行连续的文本,段落之间通过一个或者数个空行分隔 (而只要看起来像一行空白的就算是“空行”了,比如说只包含空格和 Tab 的一行,也算作空行。),这里的段落在开头不需要——也不应当——用空格或者 Tab 来缩进。 Markdown 提供了两种风格的标题:Setext 和 atx。Setext 风格的 <‘h1’> 和 <‘h2’> 是分别通过在标题的文本下边一行加上等号 (=) 或者连字符 (-) 组成的。若要创建 atx 风格的标题,你可以在把 1-6 个井号 (#) 放在标题那一行的前头——井号的数量就对应着结果中 HTML 标题的级别。 Blockquotes (引用区块) 则是通过 email 风格的 '>' 尖括号表示的。 Markdown: 一级标题 ======== 二级标题 -------- 有一座小山旁边,住着一匹老马和一匹小马。 小马整天跟着妈妈,从来不肯离开一步。这只 不过是一段常见的文本。 小马停住脚抬头一看,原来是一只小松鼠。 ### 三级标题 > 这是一个 blockquote。 > > 这是引用区块的第二段。 > > ## 这是一个 blockquote 中的 H2 输出:

一级标题

二级标题

有一座小山旁边,住着一匹老马和一匹小马。 小马整天跟着妈妈,从来不肯离开一步。这只 不过是一段常见的文本。

小马停住脚抬头一看,原来是一只小松鼠。

三级标题

这是一个 blockquote。

这是引用区块的第二段。

这是一个 blockquote 中的 H2

短语的强调 Markdown 是用星号和下划线来表示强调。 Markdown: 这里有些词*应被强调*。 这里也有些词_应被强调_。 两个星号代表的是**特别强调**。 或者,如果你喜欢的话,__用两个下划线也可以__。 输出:

这里有些词应被强调。 这里也有些词应被强调

两个星号代表的是特别强调. 或者,如果你喜欢的话,用两个下划线也可以

列表 无序列表 (通常用圆点开头的那种) 可以用星号、加号或连字符 (*, +, 或 -) 作为列表项的起始符。这些符号都是可以互换的,比如说这个: * 小驴叔叔 * 老牛伯伯 * 小松鼠 这个: + 小驴叔叔 + 老牛伯伯 + 小松鼠 与这个: - 小驴叔叔 - 老牛伯伯 - 小松鼠 都将生成相同的输出:
  • 小驴叔叔
  • 老牛伯伯
  • 小松鼠
有序列表则是用常规的数字带小数点 (.) 表示的: 1. 小驴叔叔 2. 老牛伯伯 3. 小松鼠 输出:
  1. 小驴叔叔
  2. 老牛伯伯
  3. 小松鼠
不过,如果你在列表项之间放置了空行,列表项中的文本会被

包含。而这些段落之前若用 4 个空格或者 1 个 tab 缩进的话,就能获得具有多个段落的列表项。 * 一个列表项。 具有多个段落。 * 同一个列表中的又一项。 输出:

  • 一个列表项。

    具有多个段落。

  • 同一个列表中的又一项。

链接 Markdown 支持两种创建链接的方法:行内式和引用式。这两种方法都需要你用方括号包围希望转换为链接的文本。 行内风格的链接是在链接文本后面用圆括号直接包含链接地址。例如: 这是一个[示例链接](http://example.com/)。 输出:

这是一个 示例链接

你还能给它添加一个可选的标题属性: 这是一个[示例链接](http://example.com/ "且有个标题")。 输出:

这是一个 示例链接

引用风格的链接允许你通过命名来指定链接,只要你在文档的其他地方定义好这个“名称”到“地址”的对应。 来自 [Google][1] 的访问足有来自 [Yahoo][2] 或 [MSN][3] 的 10 倍之多。 [1]: http://google.com/ "Google" [2]: http://search.yahoo.com/ "Yahoo Search" [3]: http://search.msn.com/ "MSN Search" 输出:

来自 Google 的访问足有来自 YahooMSN 的 10 倍之多。

标题属性是可选的。链接的名字允许包含字母、数字与空格,但忽略大小写。 我的早晨始于一杯咖啡与一份[纽约时报][NY Times]. [ny times]: http://www.nytimes.com/ 输出:

我的早晨始于一杯咖啡与一份 纽约时报

图像 图像的语法与链接的语法很类似。 行内风格 (标题 (title) 是可选的): ![alt text](/path/to/img.jpg "标题") 引用风格: ![alt text][id] [id]: /path/to/img.jpg "标题" 上面两个例子都会产生同样的输出: alt text 代码 在段落中,反引号可以用来标识代码,在反引号包围中的 & 和尖括号 (< 或 >) 都会被自动的转换为 HTML 实体。这样一来,用 Markdown 写关于 HTML 的代码就会容易一些: 我强烈反对使用任何 <‘ blink ’> 标记。 我希望 SmartyPants 用 `—` 这样的命名实体来代替 `—` 这样的 10 进制编码的实体。 输出:

我强烈反对使用任何 <‘ blink ’> “标记。

我希望 SmartyPants 用 &mdash; 这样的命名实体来代替 &#8212; 这样的 10 进制编码的实体。

要指定一整块预先格式化好的代码,你必须把其中每行都用 4 个空格或者 1 个 tab 缩进。就像在行内的代码一样,&, < 和 > 字符都会被自动转换妥当。 Markdown: 倘若你希望你的页面通过 XHTML 1.0 Strict 的验证, 就必须在 blockquotes 中加入段落标记:

就像这样。

输出:

倘若你希望你的页面通过 XHTML 1.0 Strict 的验证, 就必须在 blockquotes 中加入段落标记:

<blockquote>
<p>就像这样。</p>
</blockquote>