markdown學(xué)習(xí)筆記

1 區(qū)塊元素

1.1 段落

一個(gè) Markdown 段落是由一個(gè)或多個(gè)連續(xù)的文本行組成,它的前后要有一個(gè)以上的空行(空行的定義是顯示上看起來像是空的,便會(huì)被視為空行。比方說,若某一行只包含空格和制表符,則該行也會(huì)被視為空行)。普通段落不該用空格或制表符來縮進(jìn)。

markdown如果想實(shí)現(xiàn)中文一樣的縮進(jìn)功能,可以使用4個(gè) 來達(dá)到縮進(jìn)兩個(gè)漢字的目的。

1.2 換行

Markdown 允許段落內(nèi)的強(qiáng)迫換行(插入換行符),這個(gè)特性和其他大部分的 text-to-HTML 格式不一樣,其它的格式會(huì)把每個(gè)換行符都轉(zhuǎn)成 <br /> 標(biāo)簽。

如果你確實(shí)想要依賴 Markdown 來插入 <br /> 標(biāo)簽的話,在插入處先按入兩個(gè)以上的空格然后回車

的確,需要多費(fèi)點(diǎn)事(多加空格)來產(chǎn)生 <br /> ,但是簡單地「每個(gè)換行都轉(zhuǎn)換為 <br />」的方法在 Markdown 中并不適合,Markdown 中 email 式的 區(qū)塊引用 和多段落的 列表 在使用換行來排版的時(shí)候,不但更好用,還更方便閱讀。

1.3 標(biāo)題

行首插入 1 到 6 個(gè) # ,對應(yīng)到標(biāo)題 1 到 6 階。
例如:

# H1
## H2
### H3
#### H4
##### H5
###### H6   

對應(yīng)效果為:

H1

H2

H3

H4

H5
H6

1.4 區(qū)塊引用 Blockquotes

Markdown 標(biāo)記區(qū)塊引用是使用類似 email 中用 > 的引用方式。 在每行的最前面加上 > .

區(qū)塊引用可以嵌套(例如:引用內(nèi)的引用),只要根據(jù)層次加上不同數(shù)量的 > ,例如:

>引用
>>嵌套引用

對應(yīng)效果:

引用

嵌套引用

引用的區(qū)塊內(nèi)也可以使用其他的 Markdown 語法,包括標(biāo)題、列表、代碼區(qū)塊等:

> ## 這是一個(gè)標(biāo)題。 
> 
> 1.   這是第一行列表項(xiàng)。
> 2.   這是第二行列表項(xiàng)。 
> 
> 給出一些例子代碼:
> 
>     return shell_exec("echo $input | $markdown_script");

對應(yīng)效果:

這是一個(gè)標(biāo)題。

  1. 這是第一行列表項(xiàng)。
  2. 這是第二行列表項(xiàng)。

給出一些例子代碼:

return shell_exec("echo $input | $markdown_script");  

1.5 列表

Markdown 支持有序列表和無序列表。

1.5.1 無序列表

使用星號、加號或是減號作為列表標(biāo)記:

*   Red
*   Green
*   Blue

等同于:

+   Red
+   Green
+   Blue

等同于:

-   Red
-   Green
-   Blue

對應(yīng)效果為:

  • Red
  • Green
  • Blue

1.5.2 有序列表

使用數(shù)字接著一個(gè)英文句點(diǎn),:

1.  Bird
2.  McHale
3.  Parish

對應(yīng)效果:

  1. Bird
  2. McHale
  3. Parish

1.5.3 列表共性

  1. 列表項(xiàng)目標(biāo)記通常是放在最左邊,但是其實(shí)也可以縮進(jìn),最多 3 個(gè)空格(如果四個(gè)空格,就變成了代碼塊。),項(xiàng)目標(biāo)記后面則一定要接著至少一個(gè)空格或制表符。

  2. 要讓列表看起來更漂亮,你可以把內(nèi)容用固定的縮進(jìn)整理好:
    * 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.

    對應(yīng)效果:

    • 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.
  3. 列表項(xiàng)目可以包含多個(gè)段落,每個(gè)項(xiàng)目下的段落都必須縮進(jìn) 4 個(gè)空格或是 1 個(gè)制表符

     1.  This is a list item 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.
    
     2.  Suspendisse id sem consectetuer libero luctus adipiscing.
    

    對應(yīng)效果為:

    1. This is a list item 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.

    2. Suspendisse id sem consectetuer libero luctus adipiscing.

  4. 如果要在列表項(xiàng)目內(nèi)放進(jìn)引用,那 > 就需要縮進(jìn):

       *   A list item with a blockquote:
    
         > This is a blockquote
         > inside a list item.
    

    對應(yīng)效果:

    • A list item with a blockquote:

      This is a blockquote
      inside a list item.

  1. 如果要放代碼區(qū)塊的話,該區(qū)塊就需要縮進(jìn)兩次,也就是 8 個(gè)空格或是 2 個(gè)制表符

     *   一列表項(xiàng)包含一個(gè)列表區(qū)塊:
    
         function(){
             var a=1;
             var b=3;
             return a+b;
         }
    

    對應(yīng)效果:

    • 一列表項(xiàng)包含一個(gè)列表區(qū)塊:

      function(){
          var a=1;
          var b=3;
          return a+b;
      }
      
  2. 項(xiàng)目列表很可能會(huì)不小心產(chǎn)生,像是下面這樣的寫法:

     1986. What a great season.
    

    換句話說,也就是在行首出現(xiàn)數(shù)字-句點(diǎn)-空白,要避免這樣的狀況,你可以在句點(diǎn)前面加上反斜杠。

     1986\. What a great season.
    

    對應(yīng)效果:

    1986. What a great season.

1.6代碼區(qū)塊

要在 Markdown 中建立代碼區(qū)塊很簡單,只要簡單地縮進(jìn) 4 個(gè)空格或是 1 個(gè)制表符就可以:

這是一個(gè)普通段落:

    這是一個(gè)代碼區(qū)塊。

對應(yīng)效果:

這是一個(gè)普通段落:

這是一個(gè)代碼區(qū)塊。

1.7 分隔線

可以在一行中用三個(gè)以上的星號、減號、底線來建立一個(gè)分隔線,行內(nèi)不能有其他東西。你也可以在星號或是減號中間插入空格。下面每種寫法都可以建立分隔線:

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

對應(yīng)效果:





2 區(qū)段元素

2.1 鏈接

Markdown 支持兩種形式的鏈接語法: 行內(nèi)式和參考式兩種形式。

不管是哪一種,鏈接文字都是用 [方括號] 來標(biāo)記。

2.1.1 行內(nèi)式的鏈接

要建立一個(gè)行內(nèi)式的鏈接,只要在方塊括號后面緊接著圓括號并插入網(wǎng)址鏈接即可,如果你還想要加上鏈接的 title 文字,只要在網(wǎng)址后面,用雙引號把 title 文字包起來即可,例如:

This is [an example](http://example.com/ "Title") inline link.

[This link](http://example.net/) has no title attribute.

對應(yīng)效果:

This is an example inline link.

This link has no title attribute.

2.1.2 參考式的鏈接

參考式的鏈接是在鏈接文字的括號后面再接上另一個(gè)方括號,而在第二個(gè)方括號里面要填入用以辨識鏈接的標(biāo)記:

This is [an example][id] reference-style link.

對應(yīng)效果:

This is an example reference-style link.

接著,在文件的任意處(鏈接的定義可以放在文件中的任何一個(gè)地方),你可以把這個(gè)標(biāo)記的鏈接內(nèi)容定義出來,網(wǎng)址定義只有在產(chǎn)生鏈接的時(shí)候用到,并不會(huì)直接出現(xiàn)在文件之中

[id]: http://example.com/  "Optional Title Here"

對應(yīng)效果:

鏈接內(nèi)容定義的形式為:

  • 方括號(前面可以選擇性地加上至多三個(gè)空格來縮進(jìn)),里面輸入鏈接文字;

  • 接著一個(gè)冒號;

  • 接著一個(gè)以上的空格或制表符;

  • 接著鏈接的網(wǎng)址;

  • 選擇性地接著 title 內(nèi)容,可以用單引號、雙引號或是括弧包著;

    下面這三種鏈接的定義都是相同:

    **隱式鏈接標(biāo)記**功能讓你可以省略指定鏈接標(biāo)記,這種情形下,鏈接標(biāo)記會(huì)視為等同于鏈接文字,要用隱式鏈接標(biāo)記只要在鏈接文字后面加上一個(gè)空的方括號,如果你要讓 "Google" 鏈接到 google.com,你可以簡化成:  
    

    [Google][]

然后定義鏈接內(nèi)容:

[Google]: http://google.com/

2.2 強(qiáng)調(diào)

Markdown 使用星號(*)和底線(_)作為標(biāo)記強(qiáng)調(diào)字詞的符號;

*single asterisks*
_single underscores_
**double asterisks**
__double underscores__

對應(yīng)效果:

single asterisks
single underscores
double asterisks
double underscores

  **但是如果你的 * 和 _ 兩邊都有空白的話,它們就只會(huì)被當(dāng)成普通的符號。**

如果要在文字前后直接插入普通的星號或底線,你可以用反斜線:

\*this text is surrounded by literal asterisks\*

對應(yīng)效果:

*this text is surrounded by literal asterisks*

2.3 代碼

如果要標(biāo)記一小段行內(nèi)代碼,你可以用反引號把它包起來(`),例如:

Use the `printf()` function.
``There is a literal backtick (`) here.``
A single backtick in a code span: `` ` ``
A backtick-delimited string in a code span: `` `foo` ``

對應(yīng)效果:

Use the printf() function.
There is a literal backtick (`) here.
A single backtick in a code span: `
A backtick-delimited string in a code span: `foo`

2.4 圖片

Markdown 使用一種和鏈接很相似的語法來標(biāo)記圖片,同樣也允許兩種樣式: 行內(nèi)式和參考式。

2.4.1 行內(nèi)式

行內(nèi)式的圖片語法看起來像是:

!``[Alt text](/path/to/img.jpg)

!``[Alt text](/path/to/img.jpg "Optional title")

詳細(xì)敘述如下:

  • 一個(gè)驚嘆號 !
  • 接著一個(gè)方括號,里面放上圖片的替代文字
  • 接著一個(gè)普通括號,里面放上圖片的網(wǎng)址,最后還可以用引號包住并加上 選擇性的 'title' 文字。

2.4.2 參考式

參考式的圖片語法則長得像這樣:

![Alt text][id]

「id」是圖片參考的名稱,圖片參考的定義方式則和連結(jié)參考一樣:

[id]: url/to/image  "Optional title attribute"

到目前為止, Markdown 還沒有辦法指定圖片的寬高,如果你需要的話,你可以使用普通的 <img> 標(biāo)簽。

3 其他

3.1 自動(dòng)連接

Markdown 支持以比較簡短的自動(dòng)鏈接形式來處理網(wǎng)址和電子郵件信箱,只要是用方括號包起來, Markdown 就會(huì)自動(dòng)把它轉(zhuǎn)成鏈接。一般網(wǎng)址的鏈接文字就和鏈接地址一樣,例如:

<http://example.com/>

對應(yīng)效果:

http://example.com/

郵址的自動(dòng)鏈接也很類似,只是 Markdown 會(huì)先做一個(gè)編碼轉(zhuǎn)換的過程,把文字字符轉(zhuǎn)成 16 進(jìn)位碼的 HTML 實(shí)體,這樣的格式可以糊弄一些不好的郵址收集機(jī)器人,例如:

<address@example.com>

對應(yīng)效果:

address@example.com

3.2 反斜杠

Markdown 可以利用反斜杠來插入一些在語法中有其它意義的符號,例如:如果你想要用星號加在文字旁邊的方式來做出強(qiáng)調(diào)效果(但不用 <em> 標(biāo)簽),你可以在星號的前面加上反斜杠:

\*literal asterisks\*

對應(yīng)效果:

*literal asterisks*

Markdown 支持以下這些符號前面加上反斜杠來幫助插入普通的符號:

\   反斜線
`   反引號
*   星號
_   底線
{}  花括號
[]  方括號
()  括弧
#   井字號
+   加號
-   減號
.   英文句點(diǎn)
!   驚嘆號
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲(chǔ)服務(wù)。

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