PS:本以為博客園的markdown進化了,想用一下toc,結果還是有很多不足,所以保留了自動添加目錄的腳本,於是這篇博客有兩份目錄。 markdown環境:typora
首發日期:2018-07-04 修改日期:
- 2018-09-17:增加了markdown流程圖的寫法。
標題語法
效果等同:
等同於html中的h1,h2,h3,h4,h5,h6,所以只有6個
使用方法:
“#”后面加標題名,幾級標題加幾個“#” (注意有空格隔開,不過有些markdown環境對語法比較寬松,不過最好遵循規范)
# 一級標題
## 二級標題
### 三級標題
#### 四級標題
#### 五級標題
##### 六級標題
效果展示:

補充:
如果你想要對標題進行封閉處理(類似於html中的自閉合標簽加個/標注),那么你可以對應的在標題后面加上 相應數量的"#"。例如:
# 一級標題 #一級標題和二級標題還支持另外的使用方式,就是在一級標題下面加=,二級標題下面加-【最少加一個】:
一級標題 === 二級標題 ---
分隔線
實現效果:
等同於html中hr水平分隔線
使用方法:
連續的三個以上的*或-或_, 你也可以在連字符或星號之間使用空格。
---
***
___
- - -
效果展示:

字體加粗/傾斜:
效果等同:
等同與html中的b標簽或i標簽
使用方法:
斜體:使用一個*或_包裹文本(沒有空格分隔)
*斜體* _斜體_
粗體:使用兩個*包裹文本(沒有空格分隔)
**粗體** __粗體__
粗斜體:使用三個*包裹文本(沒有空格分隔)
***粗斜體*** ___粗斜體___
效果展示:

無序/有序列表:
效果等同:
等同與html中的li標簽或ol標簽
使用方法:
無序列表:無序列表使用星號,加號和連字符打頭(必須要有空格分隔標記與文本)。並且它們可互換作為列表標記。如果要使用嵌套的無序列表,可以使用tab縮進,縮進一次為嵌套一次。
- 無序列表項1
- 嵌套選項
- 無序列表項2
- 嵌套選項
- 嵌套嵌套選項
* 無序列表
* 子項
* 子項
+ 無序列表
+ 子項
+ 子項
有序列表:數字后面跟上英文句號(必須要有空格分隔標記與文本)
1. 第一
1. 嵌套的
2. 嵌套的
2. 第二
* 嵌套的
3. 第三
效果展示:
無序列表:

有序列表:

超鏈接:
效果等同:
與html中的a標簽功能類似
使用方法:
[]內寫附帶超鏈接的文本,()第一個是鏈接,第二個是標題(可選的)
[百度](http://www.baidu.com/ "超鏈接的標題") 帶標題的超鏈接.
[百度](http://example.net/) 沒有標題的超鏈接
效果展示:

補充:
- 超鏈接還有很多用法,這里就不一一解釋了。有需要的可以看看官方文檔。
圖片
效果等同:
等同html中的img標簽
使用方法:



效果展示:

表格
效果等同:
插入一個表格
使用方法:
使用|包裹文本(也可以僅僅用來分隔,不完全包裹,下面的第二個例子就是),第一行為表頭,第二行代表對齊方式,后面為表體
對於對齊方式: -或:-代表偏左,:-:代表居中,-:或代表偏右
| Name | Age | Gender |
| - | :-: | -: |
| A君 | 18| M |
| B君 | 20 | M |
| C君 | 21 | M |
Name | Age | Gender
- | :-: | -:
A君 | 18| M
B君 | 20 | M
C君 | 21 | M
效果展示:

引用塊
效果等同:
與html中的blockquote標簽功能類似
使用方法:
使用“>”加空格作為行首(不嚴格的語法可以沒有空格),可以每行都有,也可以一段的首行有一個。但后者在需要打斷普通文本與上面引用塊之間的連續時,普通文本需要跟上面有空行。
> abc
> hello world!
第二個引用塊[打斷與上面引用塊之間的連續,需要跟上面有空行]:
> 'We get old and get used to each other. We think alike.We read each others minds. We know what the other wants without asking. Sometimes we irritate each other a little bit. Maybe sometimes take each other for granted. But once in awhile, like today, I meditate on it and realise how lucky I am to share my life with the greatest woman I ever met.'
效果展示:

補充:
引用塊還可以嵌套,多少個>嵌套多少層
> john said >> "long long ago ,john said" >>>"long long ago ,john said"

代碼塊
實現效果:
與html中的code標簽功能類似
使用方法:
使用三個反引號`來表示插入一個代碼塊
```
select * from student;
```
也可以使用縮進來表示插入一個代碼塊,至少四個空格或一個縮進
select * from student;
效果展示:

補充:
- 代碼塊還支持標注語言,這樣在某些環境中可以顯示出對應的關鍵字標注顏色
```mysql
select * from student;
```
`方式的和縮進方式的有一定區別。

如果你使用的不是三個`,那么效果與上面的是不同的

TOC
實現效果:
插入一個目錄
使用方法:
[toc]
效果展示:

流程圖
實現效果:
插入一個流程圖
使用方法
1.首先,使用代碼塊區域 ```來包裹,語言選擇為flow 
2.然后開始編寫流程圖:
流程圖的由一個個元素組成,markdown流程圖的編寫包括元素創建和元素連接.
元素創建的語法是
tag=>type: content:>url.【注意空格】- tag是元素標簽的名字,沒有具體含義,僅僅用來方便標識不同的標簽。
- type是元素的類型,影響了元素的形狀(比如條件判斷元素就是菱形的),type的值有start(開始),end(結束),operation(操作),condition(條件判斷),inputoutput(輸入或輸出),subroutine(子程序)
- content是元素的內容
- url是給元素創建超鏈接,是可選的,不需要的時候省去
:>url這部分 
元素連接的語法是
tag->tag使用
->來連接元素。對於判斷元素,由於它有yes或no兩種情況,所以它會有兩個連接元素,在連接的時候需要給兩個分支使用()來確定是yes還是no,例如
cond(yes)->oper1-
```flow st=>start: 開始 use1=>operation: 操作 cond1=>condition: 判斷 oper1=>operation: yes判斷 e=>end: 結束 st->use1->cond1 cond1(yes)->oper1->e cond1(no)->use1 ``` -
st=>start: 開始 use1=>operation: 操作 cond1=>condition: 判斷 oper1=>operation: yes判斷 e=>end: 結束 st->use1->cond1 cond1(yes)->oper1->e cond1(no)->use1
想了解更多?
Markdown標准語法:https://daringfireball.net/projects/markdown/syntax
github版markdown語法:https://help.github.com/articles/basic-writing-and-formatting-syntax/
