终于开始去写博客了,要学习下MarkDown语法,第一篇博客就用来整理,记录常用的MarkDown语法,方便以后的查询,使用。该篇语法总结不能一次性写全,所以会持续的更新,完善。
MarkDown语法主要分为以下几个部分:标题,强调,引用,分割线,链接,列表,代码区块,转义字符等,还有一些零碎知识点。
功能:表示各级标题(最多有6级标题)
公式和说明:
#
+空格
+文字
注意:如果中间不加空格
,在本地的MarkDown编辑器上可以正确显示,但同步到网站上,则不能正确显示
示例:
# 我爱MarkDown
## 我爱MarkDown
### 我爱MarkDown
效果:
功能:文字的倾斜,加粗,倾斜和加粗,加删除线。
公式和说明:*
可以换成_
,效果相同
*
+文字
+*
:文字倾斜
**
+文字
+**
:文字加粗
***
+文字
+***
:文字加粗加斜
~~
+文字
+~~
:文字加删除线
示例:
*我爱MarkDown* 或 _我爱MarkDown_
**我爱MarkDown** 或 __我爱MarkDown__
***我爱MarkDown*** 或 ___我爱MarkDown___
~~我爱MarkDown~~
效果:
我爱MarkDown
我爱MarkDown
我爱MarkDown
我爱MarkDown
功能:就只是引用吧
公式和说明:
>
+空格
+文字
示例:
>
> 我爱MarkDown1
>> 我爱MarkDown2
>>> 我爱MarkDown3
效果:
注意:这里的效果用了截图,因为本地的typora输出的结果和网站的显示结果不同,暂时还不知道原因,待之后探究
功能:添加分割线,分割功能
公式和说明:
符号 -
或 *
,3个及以上
示例:
—
----
-----
------
***
****
*****
******
效果:
功能:添加网站链接,图片链接等。有两种表示方式,行内式和参考式,我们暂且先说行内式。
公式和说明:
网站链接:
[自定义名称1](url “自定义名称2”)
图片链接:
![自定义名称1](url “自定义名称2”)
注意:上面的自定义名称2
是可有可无的。在网站链接中,如果定义了自定义名称2
,当鼠标悬停在网址上时,会显示出自定义名称2
的名字,如果没有定义,则不显示任何东西;在照片链接中,自定义名称1
会在照片下方显示。如果把鼠标悬停在图片上,优先显示自定义名称2
的名字,如果没有自定义名称2
,则显示自定义名称1
的名字
示例:
[我的github1](https://zhangnanyue.github.io)
[我的github2](https://zhangnanyue.github.io “zhangnanyue”)
![我家的橘猫1](https://s2.ax1x.com/2019/10/15/K9LU3R.th.jpg)
![我家的橘猫2](https://s2.ax1x.com/2019/10/15/K9LU3R.th.jpg “乖乖”)
效果:
我的github1
我的github2
功能:分为有序列表和无序列表。有序列表会根据不同情况,用阿拉伯数字,字母等做有序的排列
公式和说明:
无序列表:这里的-
可以换成+
或者*
都是一样的效果
-
+空格
+文字
有序列表:
数字
+.
+空格
+文字
示例:
- 我爱MarkDown1
* 我爱MarkDown2
+ 我爱MarkDown3
1. 我爱MarkDown4
3. 我爱MarkDown5
9. 我爱MarkDown6
效果:
注意:这里的效果用了截图,因为本地的typora输出的结果和网站的显示结果不同,暂时还不知道原因,待之后探究
功能:可以在区块中写代码
公式和说明:
单行代码:
在``符号内添加代码即可
多行代码:以符号```开始,以符号```结尾,在这之间添加代码
```
代码1
代码2
代码3
……
```
示例:
`print(“我爱MarkDown”)`
```
include
int main() {
std::cout << “我爱MarkDown” << std::endl;
return 0;
}
```
效果:
print("我爱MarkDown")
#include
int main() {
std::cout << "我爱MarkDown" << std::endl;
return 0;
}
注意:我在本地typora写Markdown文本时,对于多行的代码区块,只需要写开头的```,该编辑器就会自动输出代码区块, 无需补全结尾的```(这个问题,是因为语法问题,还是编辑器缘故,我也不清楚,有待探究)
功能:可以将那些有特定含义的符号,输出为正常的符号
公式和说明:在特殊符号之前添加\
符号,可以使特殊符号的作用失效。
\
+ 特殊符号
示例:
\# 我爱MarkDown1
\* 我爱MarkDown2
\—
\+我爱MarkDown3
效果:
# 我爱MarkDown1
* 我爱MarkDown2
—
+ 我爱MarkDown3
注意:如果在特殊符号前不加转义字符,则会按照之前所有的MarkDown语法规则,输出相应的结果,但是在加了转义字符后,会将特殊字符变为正常的字符输出。
空格问题
在本地typora编辑器中,添加空格或者TAB,可以被正确地显示出来,但是在网站上,无论输入多少个空格或者TAB,就只显示一个空格的缩进。解决办法是不使用空格或者TAB,而是在需要空格的地方添加
添加一个,就代表一个空格,以此类推。
https://www.jianshu.com/p/191d1e21f7ed
https://blog.csdn.net/u014061630/article/details/81359144
https://github.com/younghz/Markdown
https://www.jianshu.com/p/b30955885e6d
https://sspai.com/post/54912