ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
# Markdown 基本语法 ## 段落 非常自然,一行文字就是一个段落。 比如 ``` 这是一个段落。 ``` 会被解释成 ``` <p>这是一个段落。</p> ``` 如果你需要另起一段,请在两个段落之间隔一个空行。 ``` 这是一个段落。 这是另一个段落。 ``` 会解释成 ``` <p>这是一个段落<p> <p>这是另一个段落</p> ``` 不隔一个空行的换行行为,在一些编辑器中被解释为换行,即插入一个`<br />`标签。对与另外一些编辑器,会被解释为插入一个空格。对于后者,若要插入换行标签,请在当前一行的结尾打两个空格。 ## 粗体、斜体 可以使用星号`*`或下划线`_`指定粗体或者斜体。 ``` *这是斜体* _这也是斜体_ **这是粗体** ***这是粗体+斜体*** ``` 会被解释成 ``` <em>这是斜体</em> <em>这也是斜体</em> <strong>这是粗体</strong> <strong><em>这是粗体+斜体</strong></em> ``` ## 删除线 一部分编辑器支持删除线,它不是经典markdown中的要素。用波浪线`~`定义删除线。 ``` ~~就像这样~~ ``` 会被解释成 ``` <strike>就像这样</strike> ``` ## 标题 markdown总支持1~6六级标题,通过在一行之前加上不同数量的井号来表示。 ``` # 这是 H1 # ## 这是 H2 ## ### 这是 H3 ### ... ###### 这是 H6 ###### ``` 行尾可以加上任意数量的井号字符,这些字符不会算作标题内容。通常会加上相等数量的字符以保持对称。 此外,H1和H2也可以采用在文本下方添加底线来实现,比如: ``` 这是 H1 ======= 这是 H2 ------- ``` ## 引用 通过在行首加上大于号`>`来添加引用格式。 ``` > This is a blockquote with two paragraphs. 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. ``` 引用可以嵌套: ``` > This is the first level of quoting. > > > This is nested blockquote. > > Back to the first level. ``` 也可以嵌套其他格式: ``` > ## 这是一个标题。 > > 1. 这是第一行列表项。 > 2. 这是第二行列表项。 > > 给出一些例子代码: > > return shell_exec("echo $input | $markdown_script"); ``` ## 列表 无序列表使用星号、加号或是减号作为列表标记: ``` * Red * Green * Blue ``` 等同于 ``` + Red + Green + Blue ``` 和 ``` - Red - Green - Blue ``` 有序列表则使用数字接着一个英文句点: ``` 1. Bird 2. McHale 3. Parish ``` 数字并不会影响输出的 HTML 结果,也就是说上面的例子等同于: ``` 1. Bird 1. McHale 1. Parish ``` ## 内联代码 用反引号`` ` ``来标记内联代码,它们会解释成`<code>`标签。如果代码的内容中有反引号,请用两个反引号包裹。代码中的`&`、`<`、`>`符号都会自动转义,请放心使用。 ## 代码区域 有两种方式标记代码区域,原生风格是行首缩进死个空格。 ``` 这是一个普通段落: 这是一个代码区块。 ``` 会被解释成 ``` <p>这是一个普通段落:</p> <pre><code>这是一个代码区块。 </code></pre> ``` 除了行首的4个空格会被移出,其它不变。像内联代码一样,上述三种符号也会被转义。但在代码段中,星号之类的markdown标记符号则不会解析。 还有一种是github的风格,代码段的前后用三个反引号独占一行来标记。 ![](https://box.kancloud.cn/2015-12-23_567aa6123fc7f.png) 目前主流编辑器都支持这种风格。 ## 分隔线 你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。下面每种写法都可以建立分隔线: ``` * * * *** ***** - - - --------------------------------------- ``` ## 链接 ``` [an example](http://example.com/) [an example](http://example.com/ "Optional Title") ``` 会被解释为 ``` <a href='http://example.com/'>an example</a> <a href='http://example.com/' title="Optional Title">an example</a> ``` 除了上面的行内式,也可以使用参考式: ``` [an example][id] ``` 然后在任意空白位置定义: ``` [id]: http://example.com/ "Optional Title" ``` ## 图像 ``` ![Alt text](/path/to/img.jpg) ![Alt text](/path/to/img.jpg "Optional Title") ``` 会被解释为 ``` <img src='/path/to/img.jpg' alt='Alt text' /> <img src='/path/to/img.jpg' alt='Alt text' title='Optional Title' /> ``` 同样,图像也有类似的参考式语法。 ## 自动链接 如果链接的地址和名字重复,可以用尖括号语法将其简化。 ``` <http://example.com/> ``` 就相当于 ``` [http://example.com/](http://example.com/) ``` 切记,大多数编辑器都会自动将符合url规则的东西视为链接,并且解释成链接。很多时候作者由于疏忽等缘故,链接和后面的中文之间缺少空格,导致链接不正常。所以我建议,链接要么加上尖括号,要么两端加上空格。 ## 转义 markdown支持在以下字符前面插入反斜杠 ``` \ 反斜线 ` 反引号 * 星号 _ 底线 {} 花括号 [] 方括号 () 括弧 # 井字号 + 加号 - 减号 . 英文句点 ! 惊叹号 ``` 插入之后,将不再解析这些字符,而是原样输出。 ## 表格 表格是github风格独有的语法,但近年来渐渐被大多数编辑器支持。 ``` | Item | Value | Qty | | :------- | ----: | :---: | | Computer | $1600 | 5 | | Phone | $12 | 12 | | Pipe | $1 | 234 | ``` 会被解释成 ``` <table> <thead> <tr> <th align="left">Item</th> <th align="right">Value</th> <th align="center">Qty</th> </tr> </thead> <tbody><tr> <td align="left">Computer</td> <td align="right">$1600</td> <td align="center">5</td> </tr> <tr> <td align="left">Phone</td> <td align="right">$12</td> <td align="center">12</td> </tr> <tr> <td align="left">Pipe</td> <td align="right">$1</td> <td align="center">234</td> </tr> </tbody></table> ``` 要注意第二行的冒号决定了居左居右还是居中,如果你不加冒号,默认是居左的。 另外可以把第一行去掉,做成没有表头的表格,但第二行始终是要有的。 ## 内联 HTML markdown 的语法简洁,但有其局限性,所以特意保留了内联html这种方式。任何html标签及其内容,都会原样输出到结果中。也就是说,标签中的星号等作为markdown结构的符号,以及构成html标签和实体的符号,都不会做任何转义。