Markdown(簡稱MD)是一種輕量級的标記語言。MD文法受到一些既有 Text-to-HTML 格式的影響,包括Setext、atx、Textile、reStructuredText、Grutatext 和 EtText,而最大靈感來源其實是純文字電子郵件的格式。
其文法都常用的符号組成,特定的符号約定對應特定的HTML元素标記,能實作特定的文本格式。
值得注意的是,在MarkdownPad(簡稱MDP)等MD編輯器中,能一鍵(F6)生成HTML檔案,并能通過修改CSS,自定義個性化的格式表現,因而MP也是部落格編輯的利器!
MD是一種文本書寫的格式,因而其格式文法主要涉及常用的HTML文本元素,如h1~h6,p,strong,em,pre,code,blockquote,ol,ul,li等。當然,也包括a連結,圖檔連結及電郵連結等連結文法。下文将簡略羅列MD常用文法:
區塊元素
1. 标題
Markdown 支援兩種标題的文法,類 Setext 和類 atx 形式:前者使用不限量的 === 和 ---,即分别在文本下一行劃入===或---生成最高階标題(h1)和第二階标題(h2);後者使用不同數量的符号 # 銜接文本,生成h1~h6的标題。
這是标題h1
================
這是标題h2
------------------
### 這是标題h3
###### 這是标題h6
2. 段落,換行,加粗,斜體
段落:正常輸入生成p标簽;
換行:行尾空兩格或tab縮進生成br标簽;
加粗:單個 * 或 _ 開頭,銜接文本,對應的 * 或 _ 結尾;
斜體:一對 * 或 _ 開頭,銜接文本,對應的一對 * 或 _ 結尾;
注意:如果你的 * 和 _ 兩邊都有空白的話,它們就隻會被當成普通的符号;也可通過"\"轉義,讓*和\作為普通字元。
這是普通文本。 <p>這是普通文本。</p>
**這是粗體** <strong>這是粗體</strong>
**這是斜體** <em>這是斜體</em>
3. 引用,代碼塊,分割線
引用:在每行或段落前面添加">"符号即可,MD會自動為文本添加blockquote标簽;引用可嵌套,即可在">"裡面再輸入">"生成引用塊内的引用;引用塊内可以使用其他的MD文法,如标題,清單,行内文本表現辨別等。
> 這是一個引用塊;
> 也可以這樣寫,
斷行可以不用添加">"符号;
>>這是子引用。
代碼塊:縮進4個空格或一個tab制表符就能生成代碼塊,MD會用\<pre\>和\<code\>标簽來把代碼區塊包起來。隻要某一行未縮進,文本就變成普通的文本行。
這是一個标準的代碼塊,由pre包裹code組合而成。
注意:在代碼區塊中,一般的MD文法不會被轉換,像是星号便隻是星号,這表示你可以很容易地以 Markdown 文法撰寫 Markdown 文法相關的檔案。
分割線:用三個以上的星号(*)、減号(-)、底線( _ )來建立一個分隔線,行内不能有其他東西;也可以在星号或是減号中間插入空格。
***
* * *
*******
- - -
----------------------
4. 清單
無序清單:使用星号(*)、加号(+)或減号(-)作為清單标記,标記類型為實心原點。
有序清單:使用數字+英文句點+空格作為清單标記。注意:在清單标記上使用的數字并不會影響輸出的 HTML 結果,數值可相同也可不連續。
* 清單1
* 清單2
* 清單3
1. 清單1
3. 清單2
2. 清單3
區段元素
1. 連結
MD支援兩種形式的連結文法:行内式和參考式兩種形式。不管是哪一種,連結文字都是用 [方括号] 來标記。
行内式格式:在方塊括号後面緊接着圓括号并插入網址連結即可,如果你還想要加上連結的 title 文字,隻要在網址後面,用雙引号把 title 文字包起來即可。即:[連結文本](連結網址 "title");
參考式格式:在連結文字的括号後面再接上另一個方括号,而在第二個方括号裡面要填入用以辨識連結的标記。即:[連結文本][id值];[id值]:連結網址 "title";
[百度](http://www.baidu.com/)
[百度][baidu];[baidu]:http://www.baidu.com "這是百度的連結"
注意:id可以有字母、數字、空白和标點符号,但是并不區分大小寫;參考式可以省略指定連結标記,這種情形下,連結标記會視為等同于連結文字,如:[baidu][];[baidu]:http://www.baidu.com
2. 圖檔
MD使用一種和連結很相似的文法來标記圖檔,同樣也允許兩種樣式:行内式和參考式。目前還無法為圖檔設定寬高!
行内式:
參考式:![alt 圖檔替代文本][id]; [id]:圖檔位址 "title"
參考:Markdown 文法說明 (簡體中文版)