Markdown基礎(chǔ)語法

Markdown 簡介

Markdown 是一種用來寫作的輕量級標記語言, 用一些簡單的標記, 來代替常見的排版格式, 它使我們專心于碼字, 不必花太多精力在排版上.

Markdown 文檔是純文本文件, 直接在記事本里, 就可以編寫 Markdown 文檔, 但是 Markdown 文檔中的標記需要 Markdown 解析器(或稱為渲染器)才能變成成排版的樣式, 很多 Markdown 編輯器內(nèi)置了解析器, 在寫 Markdown 文檔的同時, 就可以預(yù)覽排版格式了. 這里推薦幾個比較不錯的 Markdown 編輯器:

使用上述軟件, 就可以進行 Markdown 的編寫了. 在這些編輯器里寫 Markdown 文檔就好像在 Word 里寫文檔一樣, 只不過需要使用 Markdown 標記語法來實現(xiàn)排版.

本文不會介紹 Markdown 的原理, 只需要知道, 使用上述編輯器, 配合相應(yīng)的語法, 就可以寫出有漂亮的排版格式的 Markdown 文檔了.

下面是一些 Markdown 常用語法, 掌握這些語法, 就可以滿足90%以上的使用場景. 如果想了解詳細的文檔, 可以在閱讀過本文后, 參考:

關(guān)于 Markdown 的原理和擴展語法, 也可參考我的這篇文章: Markdown 擴展語法

標題

在 # 后面加一個空格, 然后寫的文字, 會被渲染成標題樣式. 共支持六級標題, 從 # 到 ######. 例如:

# 一級標題
## 二級標題
### 三級標題
#### 四級標題
##### 五級標題
###### 六級標題

效果如下:

一級標題

二級標題

三級標題

四級標題

五級標題
六級標題

段落 Paragraph

直接寫的文字會形成段落, 一個 Markdown段落是由一個或多個連續(xù)的文本行組成, 它的前后要有一個或以上的空行(無論有多少個空行, 都會被解析成一個空行).

在文本中使用回車鍵換行, 最終不會被解析成換行. 如果在一個段落中需要換行, 需要按兩個或以上的空格, 然后按回車鍵. 另外, 使用兩個空格進行換行, 不會導(dǎo)致分段, 依然是同一段落.

文本樣式

Markdown 中可以給文本添加樣式:

  • 被 * 或 _ 包裹起來的文本會被渲染成斜體
  • 被 ** 或 __ 包裹起來的文本會被渲染成粗體
  • 被 ~~ 包裹起來的文本會被渲染出刪除線

例如:

*這是斜體的文字*
**這是加粗的文字**
~~這是刪除的文字~~

效果為:

這是斜體的文字
這是加粗的文字
這是刪除的文字

Markdown 標準語法不支持下劃線, 但是有些解析器支持特殊的語法, 這里不做介紹.

轉(zhuǎn)義字符

如果文本中某些字符就是想要正常顯示, 不希望被解析成有特殊含義的標記,
可以使用 \ 進行轉(zhuǎn)義, 例如:

\*\*使用 \ 轉(zhuǎn)義 * 號\*\*

由于文字兩邊的 * 號前面都加了"", "*" 不再用來表示粗體, 顯示的效果為:

**使用 \ 轉(zhuǎn)義 * 號**

列表

無序列表

在文字前面加 * 或者 - 或者 + , 然后輸入空格, 再寫文字, 就會變成無序列表, 例如:

* 列表項1
- 列表項2
+ 列表項3

效果為:

  • 列表項1
  • 列表項2
  • 列表項3

建議: 如無特殊需要, 最好用同一種列表表示符號.

有序列表

數(shù)字后面加個點(英文句號), 然后輸入空格, 再寫文字, 例如:

1. 列表項1
2. 列表項2
3. 列表項3

效果為:

  1. 列表項1
  2. 列表項2
  3. 列表項3

多級列表

列表可以使用兩個空格或者tab鍵進行縮進, 形成多級列表:

* 一級列表項1
  * 二級列表項1
  * 二級列表項2
* 一級列表項2
  * 二級列表項1
  * 二級列表項2
  • 一級列表項1
    • 二級列表項1
    • 二級列表項2
  • 一級列表項2
    • 二級列表項1
    • 二級列表項2

列表段落

列表可以和段落結(jié)合起來, 甚至一個列表項里可以有多個段落, 例如:

* Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi,
viverra nec, fringilla in, laoreet vitae, risus.

  This is the second paragraph in the list item. You're
only required to indent the first line. Lorem ipsum dolor
sit amet, consectetuer adipiscing elit

* Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
Suspendisse id sem consectetuer libero luctus adipiscing.

效果為:

  • Lorem ipsum dolor sit amet, consectetuer adipiscing elit.
    Aliquam hendrerit mi posuere lectus. Vestibulum enim wisi,

    This is the second paragraph in the list item. You're
    only required to indent the first line. Lorem ipsum dolor
    sit amet, consectetuer adipiscing elit

  • Donec sit amet nisl. Aliquam semper ipsum sit amet velit.
    Suspendisse id sem consectetuer libero luctus adipiscing.

注意: 如果一個列表項里有多個段落, 第二個及以后的段落前面要有縮進. 雖然這是標準語法, 但是不建議一個列表項里有多個段落, 因為有的解析器有 bug, 解析的效果比較差.

引用

> 后面加一個空格, 然后寫文字, 會被渲染成引用樣式, 例如:

> 這段文字是引用  
> **在引用中換行同樣可以使用兩個空格, 也可以使用粗體**

效果為:

這段文字是引用
在引用中換行同樣可以使用兩個空格, 也可以使用粗體

Markdown 允許只在一整段前面加一個 > 來表示引用文字, 例如下面的語法也是正確的:

> 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 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.

引用中也可以使用其他 Markdown 標記, 例如:

> ## 這是一個標題
> 
> 1. 這是第一行列表項
> 2. 這是第二行列表項

效果為:

這是一個標題

  1. 這是第一行列表項
  2. 這是第二行列表項

同理, 引用由也可以使用引用, 渲染效果就是就是層層嵌套, 這里不再演示.

鏈接和圖片

Markdown 中可以插入鏈接和圖片.

普通鏈接

語法如下

[text](link)  

text 指的是顯示出來的鏈接名稱, 后面 () 里的是真正的鏈接地址
例如: 百度首頁
如果不需要顯示鏈接名稱, 可以直接貼網(wǎng)址, 如:
百度首頁: https://www.baidu.com

參考鏈接

如果一個鏈接在一篇文章中出現(xiàn)多次, 可以定義為參考鏈接, 語法如下:

首先需要定義參考鏈接, 語法為:

[鏈接id]:link

例如:

[baidu]:http://www.baidu.com

注意, 定義鏈接時, id 一定要唯一, 不能有兩個一樣的參考鏈接 id, 其次, 定義的鏈接上下一定要有空行, 最后, 定義的鏈接不會被顯示出來.

定義好參考鏈接后, 就可以使用了, 使用時, 先用一個中括號表示鏈接文字, 后面再跟一個[], 里面寫參考鏈接的 id, 例如:

[這是一個百度首頁][baidu]

[這是另一個百度首頁][baidu]

效果如下:

這是一個百度首頁

這是另一個百度首頁

圖片

Markdown 中也支持插入圖片, 語法如下:

![alt](image_link)

注意比鏈接多了個 !, alt 指的是圖片的介紹, 后面()里是圖片的地址 例如:

![百度logo](https://www.baidu.com/img/bd_logo1.png?where=super)

效果為:


bd_logo1.png

PS: 圖片地址可以是網(wǎng)址, 也可以是文件的相對路徑. 如:

./img/xxx.jpg

這表示 當前目錄下的 img 目錄中的 xxx.jpg.

Markdown 文檔中的圖片, 可以使用圖片在本地的相對路徑, 也可以把圖片放在七牛云/微博上, 生成外鏈地址使用. 有些網(wǎng)站的 Markdown 編輯器(比如簡書等), 有可能需要把圖片上傳到這些網(wǎng)站上才能使用.

圖片參考鏈接

圖片也可以使用參考鏈接的語法, 在參考鏈接的語法前面加 ! 即可, 如下:

![圖片名稱][圖片?id]
[圖片id]: url/to/image

使用方法和參考鏈接一樣, 這里不再多說.

代碼

Markdown 中可以插入代碼.

行內(nèi)代碼 Inline code:

在文本中, 兩個 ` 號(數(shù)字1左邊的鍵) 中間的內(nèi)容會被解析成代碼.
例如: int i = 0;

Multi-line code:

一對 ``` 之間的內(nèi)容會被解析成多行代碼. 連續(xù)三個` 作為起始, 后面的內(nèi)容會被解析成代碼, 再以三個 ` 結(jié)尾. 這里無法演示具體寫法, 直接看效果:

int i = 0;
boolean b = true;
for (; i < 10; i++) {
    // 注釋
}

另外, 直接使用 tab 進行縮進, 后面的文字就會被解析成代碼

int i = 0;
boolean b = true;

第一種方法可以設(shè)置代碼語言類型, 直接在第一個``` 后面加語言名稱即可, 如 java, javascript, html 等等. 但是如果只有 一兩行代碼, 使用第二種方式也挺方便.

表格 Table

表格的語法比較簡單, 按照下面這種寫法就可以被解析成表格:

First Header | Second Header
------------ | -------------
Content from cell 1 | Content from cell 2
Content in the first column | Content in the second column

顯示效果如下:

First Header Second Header
Content from cell 1 Content from cell 2
Content in the first column Content in the second column

注意: 表格的語法對格式的要求很松散, 只需要用 | 把單元格隔開就行, 但是一定別忘了分隔表頭和表格內(nèi)容的那一行 -|-, 沒有這一行的話無法解析成表格.

分割線

要插入一道分割線, 可以使用三個以上的星號, 減號, 或者下劃線, 例如:

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

上面任何一種方式都可以產(chǎn)生一道分割線, 這里不再演示效果了.

總結(jié)

上面就是常用的 Markdown 語法了, 前面也說了, 掌握這些語法, 就可以滿足絕大多數(shù)的排版需求了. 有些 Markdown 編輯器支持很多擴展語法, 甚至有畫流程圖的語法, 對此我的態(tài)度是不建議使用. Markdown 的目的是為了讓我們專心寫作, 使用簡單明了的排版即可, 復(fù)雜排版/流程圖這種事情, 還是交給 Word 和專業(yè)的繪圖軟件去做吧.

我也會寫一篇文章來介紹 Markdown 的原理, 以及一些實用的擴展語法, 有興趣的同學(xué)可以看看, 多了解一些東西也不錯.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末等脂,一起剝皮案震驚了整個濱河市堪遂,隨后出現(xiàn)的幾起案子赖阻,更是在濱河造成了極大的恐慌暮胧,老刑警劉巖馍资,帶你破解...
    沈念sama閱讀 210,978評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件穴店,死亡現(xiàn)場離奇詭異膀捷,居然都是意外死亡迈嘹,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,954評論 2 384
  • 文/潘曉璐 我一進店門全庸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來秀仲,“玉大人,你說我怎么就攤上這事壶笼∩窠” “怎么了?”我有些...
    開封第一講書人閱讀 156,623評論 0 345
  • 文/不壞的土叔 我叫張陵覆劈,是天一觀的道長保礼。 經(jīng)常有香客問我沛励,道長,這世上最難降的妖魔是什么氓英? 我笑而不...
    開封第一講書人閱讀 56,324評論 1 282
  • 正文 為了忘掉前任侯勉,我火速辦了婚禮,結(jié)果婚禮上铝阐,老公的妹妹穿的比我還像新娘址貌。我一直安慰自己,他們只是感情好徘键,可當我...
    茶點故事閱讀 65,390評論 5 384
  • 文/花漫 我一把揭開白布练对。 她就那樣靜靜地躺著,像睡著了一般吹害。 火紅的嫁衣襯著肌膚如雪螟凭。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,741評論 1 289
  • 那天它呀,我揣著相機與錄音螺男,去河邊找鬼。 笑死纵穿,一個胖子當著我的面吹牛下隧,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播谓媒,決...
    沈念sama閱讀 38,892評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼淆院,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了句惯?” 一聲冷哼從身側(cè)響起土辩,我...
    開封第一講書人閱讀 37,655評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎抢野,沒想到半個月后拷淘,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,104評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡指孤,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年辕棚,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片邓厕。...
    茶點故事閱讀 38,569評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡逝嚎,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出详恼,到底是詐尸還是另有隱情补君,我是刑警寧澤,帶...
    沈念sama閱讀 34,254評論 4 328
  • 正文 年R本政府宣布昧互,位于F島的核電站挽铁,受9級特大地震影響伟桅,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜叽掘,卻給世界環(huán)境...
    茶點故事閱讀 39,834評論 3 312
  • 文/蒙蒙 一楣铁、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧更扁,春花似錦盖腕、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,725評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至膛薛,卻和暖如春听隐,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背哄啄。 一陣腳步聲響...
    開封第一講書人閱讀 31,950評論 1 264
  • 我被黑心中介騙來泰國打工雅任, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人咨跌。 一個月前我還...
    沈念sama閱讀 46,260評論 2 360
  • 正文 我出身青樓沪么,卻偏偏與公主長得像,于是被迫代替她去往敵國和親虑润。 傳聞我的和親對象是個殘疾皇子成玫,可洞房花燭夜當晚...
    茶點故事閱讀 43,446評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 標題 Markdown 支持兩種標題的語法 1.第一種寫法 是在行首插入 1 ~ 6 個 # 加酵,對應(yīng)到標題 1 到...
    佘樂閱讀 252評論 0 0
  • 本文轉(zhuǎn)自@younghz 主要內(nèi)容 Markdown是什么拳喻?誰發(fā)明了這么個東西?為什么要使用它猪腕?怎么使用冗澈?都誰在用...
    Wynter_Wang閱讀 440評論 0 1
  • << 訪問 Wow!UbuntuNOTE: This is Simplelified Chinese Editio...
    Xiaosonl閱讀 1,336評論 0 2
  • 146. LRU Cache 基本想法就是用一個雙向鏈表加上一個hash(key, node), 節(jié)點的val等于...
    健時總向亂中忙閱讀 100評論 0 0
  • 文/居里社 陽光下捌归,五顏六色的花努力地盛開著,朝著太陽的方向岭粤。清風吹起了我的長發(fā)惜索,仿佛就這樣拂去了心頭的塵埃,我坐...
    居里葉閱讀 434評論 8 14