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"