Markdown 簡介
1. Markdown 是什么?
Markdown 是一種輕量級標(biāo)記語言,創(chuàng)始人是約翰?格魯伯(John Gruber)。它允許人們 “使用易讀易寫的純文本格式編寫文檔,然后轉(zhuǎn)換成有效的 HTML 文檔”。
—— 維基百科。
不難看出,Markdown 是一種文檔編寫規(guī)范,使用的是純文本的方式,也就是說你可以用最簡單的記事本工具,直接編輯它,然后再將它生成圖文并茂的富文本文檔,例如:HTML 頁面、PDF 文件、長圖等等。
Markdown 規(guī)范當(dāng)前版本號為 1.0.1,發(fā)布于 2004 年 12 月 14 日。
2. Markdown 的發(fā)展歷程
Markdown 誕生于 2004 年。誕生初期是為了簡化 HTML 語法,用于編寫閱讀次數(shù)多、更新頻率高,但內(nèi)容格式相對穩(wěn)定的 README 類的文檔。所以 Markdown 語法支持嵌入原始的 HTML 標(biāo)記語言,支持 CSS 樣式。
Markdown 為導(dǎo)出 (HTML) 而生,在導(dǎo)出過程中,其導(dǎo)出樣式與布局受到導(dǎo)出工具的影響,以至于不同環(huán)境下導(dǎo)出的結(jié)果會有所不同,造成了 Markdown 文件導(dǎo)出的不確定性。同時(shí),Markdown 的實(shí)現(xiàn)有時(shí)包含了自定義的擴(kuò)展內(nèi)容,比如流程圖等,這也使得 Markdown 文件在不同工具間的移植難度增加。在很長一段時(shí)間,Markdown 語言并沒有流行起來。
Markdown 的真正流行是在 2008 年 Github 出現(xiàn)以后。Github 使用 Markdown 作為默認(rèn)的 Readme 文件編寫規(guī)范,并提供了一套渲染規(guī)范。隨著 Github 的流行,越來越多的具有高文字輸出能力的程序員開始使用 Markdown 作為其創(chuàng)作的首選工具。
現(xiàn)在,Markdown 不僅適用于工程師,其簡潔的語法、規(guī)范的布局和高效的渲染能力,使其得到了越來越多文字創(chuàng)作者的喜愛。
3. Markdown 的優(yōu)點(diǎn)
Markdown 從 HTML 發(fā)展而來,但是擺脫了 HTML 冗長的標(biāo)簽束縛。她有著記事本環(huán)境下的便捷操作方式,同時(shí)也能做到像 Word\Pages 一樣的布局效果。她既能無障礙地切換于不同編輯器,又可以無壓力地讓多人協(xié)作編輯。
- Markdown 書寫簡單,不限制編輯器,用幾個(gè)符號便可以解決排版問題;
- Markdown 的源代碼具有良好的可讀性,即使不渲染為 HTML 頁面,也不影響其內(nèi)容的表達(dá);
- Markdown 兼容 HTML 語法,有擴(kuò)展能力,當(dāng)我們面對復(fù)雜樣式或內(nèi)容需求時(shí),可以通過添加 HTML\CSS 代碼擴(kuò)充其表現(xiàn)形式;
- Markdown 比 Word 文件更適合在版本控制環(huán)境下使用,有利于修改內(nèi)容的對比和追溯;
- Markdown 非常適用于博客寫作,其規(guī)范化的布局方式使創(chuàng)作者只需關(guān)注內(nèi)容本身。
4. Markdown 的不足
- 缺乏公認(rèn)的、與時(shí)俱進(jìn)的官方標(biāo)準(zhǔn),其最后標(biāo)準(zhǔn)更新于 2004 年度;
- Markdown 源代碼無法嵌入圖片、文件等資源,需要使用 URL 來定位;
- Markdown 的布局形式相對單一,無法用簡單方法實(shí)現(xiàn)圖文混排。
5. Markdown 寫作的常用工具
在線編輯器:MdEditor
一款在線的 Markdown 編輯器,可以方便地將結(jié)果導(dǎo)出為 HTML 格式。
官方地址:mdeditor.com
離線端編輯器:Typora
一款簡潔的 Markdown 編輯器,其操作方式偏向于 Word,適合于文字創(chuàng)作者。
官方地址:typora.io
6. 一個(gè)的簡單的實(shí)例
使用任意一款 Markdown 編輯器,比如:MdEditor,將以下源代碼復(fù)制到編輯區(qū),然后觀察右側(cè)預(yù)覽區(qū)域效果。
源代碼
# Markdown 大標(biāo)題
## Markdown 二級標(biāo)題
### Markdown 三級標(biāo)題
↓ 圖片 ↓

↓ 表格 ↓
|姓名|分?jǐn)?shù)|
|---|---|
|張三|100分|
|李四|90分|
7. Markdown 學(xué)習(xí)基礎(chǔ)
Markdown 簡化了 HTML 的語法,使得大多數(shù)人都可以輕松地完成文檔排版;
Markdown 的基礎(chǔ)排版功能,如標(biāo)題、段落、加重等功能,不要求使用者有其他技能基礎(chǔ);
Markdown 的基礎(chǔ)樣式功能,如字體、字號、顏色等,需要使用者有 HTML & CSS 基礎(chǔ)。