什麼是Markdown,Markdown的基本使用,Markdown入門教程,Markdown標記大全,Markdown語法
阿新 • • 發佈:2019-01-07
對於一個程式設計師來說你除了寫程式碼之外,你可能還需要在CSDN或者部落格園上寫部落格,或者在GitHub上分享原始碼時寫README,那麼Markdown你瞭解嗎。它會大大的方便你的部落格或者文件寫作,並且讓文件看起來更加規整和脈絡清晰。如果你還不是很瞭解Markdown,接著看這篇文章吧,相信你一定會有所收穫。
一、什麼是Markdown
百度百科上是這麼解釋Markdown的:
Markdown是一種可以使用普通文字編輯器編寫的標記語言,通過簡單的標記語法,它可以使普通文字內容具有一定的格式。
簡單的說:
Mark是標記,down是下,那麼合起來就是標記下,是的,可以簡單的理解為,Markdown是一種為了方便人們使用的標記語言。它是html(超文字標記語言)的一種簡單化。通過使用#號和*號等簡單的符號,來取代相對複雜的html程式碼。而實際上一段用Markdown寫成的文字,在網頁上呈現時,它還是會被翻譯成html程式碼。
將Markdown翻譯成html有多種方法,不同的人也有不同的實現,同樣的一個標記可能在不同平臺上看起來不一樣。github上有多種不同的開源的程式碼,它們或是js或是python寫成,用來將Markdown轉成html程式碼。很多網站也有他們自己的Markdown語法,其中有相似之處,也有不同的地方,比如github的README.md就是使用Markdown語法寫成的,csdn和部落格園也有自己的Markdown語法用來方便使用者進行部落格創作。如果你喜歡,你也可以設計自己的Markdown語法,用來在自己的個人部落格網站上使用。
csdn的部落格也是使用Markdown語法的:
二、Markdown的來龍去脈
Markdown是由Aaron Swartz和Gruber共同設計的,Aaron是一名很放蕩不羈的人,怎麼個放誕不羈呢,來看看他的人生:
- 14歲參與RSS 1.0規格標準的制訂。
- 2004年入讀斯坦福,之後退學。
- 2005年建立Infogami,之後與Reddit合併成為其合夥人。
- 2010年創立求進會(Demand Progress),積極參與禁止網路盜版法案(SOPA)活動,最終該提案被撤回。
- 2011年7月19日,因被控從MIT和JSTOR下載480萬篇學術論文並以免費形式上傳於網路被捕。
- 2013年1月自殺身亡。
我們的生活能變得越來越好,多虧了這些放蕩不羈的人。
三、Markdown的優點,怎麼理解Markdown
- 易讀易寫
- 相容html(Markdown中可以嵌入html程式碼)
- 跨平臺(這一切都要感謝瀏覽器)
- 很多網站在用,GitHub, 簡書,Stack Overflow,Apollo,Moodle,Redditgithub, wordpress, csdn, 部落格園等等等
Markdown和html, css這類語言一樣,算不上程式語言,它們只是人類開發出來的在用來方便在計算機上描述資訊、展示資訊的一種標記語言。html css和Markdown的區別是是html和css更加強大,描述事物更加生動具體,而Markdown則很簡潔(可以理解為Markdown就是把html中常用的標記總結出來簡化使用而已)。
四、Markdown的主要組成
雖然有很多種Markdown語法的實現,甚至你自己也可以設計屬於你自己的Markdown語法,但是實際上平常使用的主流的平臺上用的語法都是大同小異呢,來一起看看吧。
使用 ==============和----------------------放在一行文字下面標記標題
(多少個=或者-無所謂啦,=標記一級標題就是html中的<h1>,-標記二級標題,就是html中的<h2>)
如
一級標題
=
二級標題
------------
它們看起來就像下面那樣子:
一級標題
二級標題
使用#來形成html中h1 h2 h3...這樣的從大到小的標題,#後面有一個空格
如
# 一級標題
## 二級標題
### 三級標題
#### 四級標題
##### 五級標題
###### 六級標題
它們看起來就像下面這樣子:
一級標題
二級標題
三級標題
四級標題
五級標題
六級標題
段落的前後要有空行,形成的樣式就類似於html中的<p></p>那樣,但是段首是不會自己縮排的。
**加粗文字** __加粗文字__
==標記文字==
~~刪除文字~~
*斜體* _斜體_
> 引用文字
> >巢狀引用
H~2~O is是液體。(\~2\~上標)
哈哈哈~[1]
2^10^ 運算結果是 1024。(\^10\^下標)
它們看起來就像下面那樣子:
加粗文字 加粗文字
標記文字
刪除文字
斜體 斜體
引用文字
巢狀引用
H2O is是液體。(~2~下標)
哈哈哈[1]
210 運算結果是 1024。(^10^上標)
程式碼區塊顧名思義就是用來寫程式碼的啦,它使用兩組\```(忽略反斜槓)包圍,
這個符號就是英文輸入法情況下tab製表符上面那個按鍵
在程式碼區塊中的文字都會保留原本的縮排格式,也不會自動換行,當超出長度時會顯示一個滑動條,
程式碼區塊的背景顏色也會與普通的背景顏色不同,
同時Markdown語法也會被忽略,這就是我為什麼要把Markdown放在程式碼區塊描述的原因了(也可以
使用\反斜槓忽略符號)。
來一段經典的 helloworld.c吧:
\```
#include <stdio.h>
int main(void){
printf("hello world!");
}
\```
忽略掉反斜槓,它們看起來就像下面那樣子:
#include <stdio.h>
int main(void){
printf("hello world!");
}
使用- * + 配合縮排表示列表,類似<ul><li></li></ul> (- * +後面都有空格)
- 大專案1
* 中專案1
+ 小專案1
+ 小專案2
+ 小專案3
* 中專案2
- 大專案2
- 大專案3
它們看起來就像下面那樣子:
- 大專案1
- 中專案1
- 小專案1
- 小專案2
- 小專案3
- 中專案2
- 中專案1
- 大專案2
- 大專案3
使用1. 2. 3. 這樣排佈列表 (.後面有空格)
1. 專案1
2. 專案2
3. 專案3
它們看起來就像下面那樣子:
- 專案1
- 專案2
- 專案3
使用三個或三個以上的-或者*或者_
如
分割線
---
***
___
分割線
推薦使用-啦,因為不用按shift,它們看起來就像下面那樣子:
分割線
分割線
[這個是連結名](這個是連結網站)
如
[我們和百度達成了戰略合作,只要點選此連結您就能享受我們為您定製的專用搜索服務](http://www.baidu.com)
也可以這麼寫([1]:https://www.csdn.net/前記得加一空行)
這篇文章取自了
[xxxxxx的觀點][1]
[xxxxxx的看法][2]
[1]:https://www.csdn.net/
[2]:https://www.csdn.net/
它們看起來就像下面這樣子:
我們和百度達成了戰略合作,只要點選此連結您就能享受我們為您定製的免費專用搜索服務
和連結的形式沒有什麼差別,就是在連結之前加一個!,[]中的內容變成了圖片的描述。
csdn支援直接拖曳新增圖片,這個功能還是很讚的。
說實話居中和帶尺寸的圖片還是蠻有用的啦,會讓部落格看上起更加規整。我直接把csdn幫助的抄過來了:
圖片: ![圖片](https://avatar.csdn.net/7/7/B/1_ralf_hx163com.jpg)
帶尺寸的圖片: ![帶尺寸的圖片](https://avatar.csdn.net/7/7/B/1_ralf_hx163com.jpg =30x30)
居中的圖片: ![居中的圖片](https://avatar.csdn.net/7/7/B/1_ralf_hx163com.jpg#pic_center)
居中並且帶尺寸的圖片: ![居中並且帶尺寸的圖片](https://avatar.csdn.net/7/7/B/1_ralf_hx163com.jpg#pic_center =30x30)
它們看起來就像下面這樣子:
圖片:
帶尺寸的圖片:
居中的圖片:
居中並且帶尺寸的圖片:
反斜槓用於忽略符號,相當於程式語言裡的轉義作用。
如
\# 一級標題
\*加粗不加粗\*
\```
這不是程式碼段
\```
看起來就是迴歸本源了
# 一級標題
*加粗不加粗*
```
這不是程式碼段
```
`這個符號就是英文輸入法情況下tab製表符上面那個按鍵,
它的作用就是用來標記,csdn這裡指的是單行程式碼
如
`(lambda x, y: x+y)(1, 2)`
它看起來就像下面那樣子:
(lambda x, y: x+y)(1, 2)