Markdown 語法

jopen 10年前發布 | 21K 次閱讀 Markdown處理庫 Markdown

Markdown 的語法的權威介紹是 Daring Fireball 的 Markdown Syntax Documentation,不過有一些 Markdown 的實現對原本的 Markdown 語法作了擴展。本頁面僅作為簡單的參考,并不是對這個文檔的翻譯,因此懂英文的都應該去讀 Markdown Syntax Documentation.

最常用格式

  • 空一行(兩個回車)分段
  • 行末加兩個或多個空格才是真正的換行,否則正常的一個回車就像在 HTML 代碼中一樣,被當作空格處理
  • 插入鏈接:[鏈接文字](url)
  • 圖片跟鏈接很像,在前面加個嘆號:![alt 文字](圖片 URL)

段落和換行有什么區別?段落在生成的 HTML 代碼中被一對<p></p>標簽包含起來,而換行只是插入了一個<br />標簽。一般來說,網頁設計給段落之間留的空白應該比行距大。

其它格式

下面會遇到一些語法需要在許多行前插入統一的縮進或特殊符號的,因此你需要一個非常舒服的支持列編輯模式的文本編輯器

內嵌 HTML

由于內嵌 HTML 可以做 HTML 能做的任何事情,因此在用戶可以自由輸入的地方,需要禁用此功能,比如本站點的評論框。

  • block level elements 像 p, div 之類的,需要前后各空一行(兩個回車),并且開始和結束標簽那一行的前面不能用空格或 Tab 縮進。
  • span level elements 如 a, img 可以在任何地方使用

標題

用 1-6 個井號 (#) 開始一行表示這一行是標題,例如:

# 一級標題
## 二級標題
###### 六級標題

blockquote

用右尖括號 (>) 表示 blockquote,你一定見過郵件中這樣表示引用別人的內容。可以嵌套,可以包含其它的 Markdown 元素,例如:

> ## This is a header.
>
> 1.   This is the first list item.
> 2.   This is the second list item.
>
> Here's some example code:
>
>     return shell_exec("echo $input | $markdown_script");

列表

HTML 列表分無序列表 (unordered list, ul) 和有序列表 (ordered list, ol) 兩種。在 Markdown 中用星號、加號、減號開始一行表示無序列表,用數字開始一行表示有序列表。例如:

*   Red
*   Green
*   Blue

1.  Bird
2.  McHale
3.  Parish

當然在有序列表中不必完全按照數字順序標記,不過最好第一個條目使用數字 1. 列表的標記符號一般寫在一行的開始,不過也可以在前面加最多三個空格 (如果加四個空格就表示是源代碼了,見后文)。

代碼及代碼塊

如果是在一段文字中插入一句代碼,把代碼用 (`) 符號包圍起來即可。這個符號在鍵盤左上角,1 的左邊,Tab 的上面。

如果插入一大段代碼也很簡單,在代碼的每一行之前加四個空格。

橫線

三個或以上星號、減號或者下劃線單獨放在一行即可生成一條橫線 (horizontal rule, hr). 以下例子都是可以的:

* * *
***
*****
- - -
---------------------------------------

強調

用星號或下劃線來實現。兩邊分別放一個 * 或 _ 會生成 em 標簽,放兩個則生成 strong 標簽。例如:

*單星號*

_單下劃線_

**雙星號**

__雙下劃線__

會生成:

<em>單星號</em>

<em>單下劃線</em>

<strong>雙星號</strong>

<strong>雙下劃線</strong>
 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!