平时在写项目的时候经常要写一些README等等的说明性文件,但是这样的文件一般都是.md的文件,编写的语法自然跟其他格式的文件有所区别,至于为什么要用这种格式的文件,鬼知道,大家都这么用,跟着用就对了。
以下介绍一些常用的markdown语法,我也就知道这么多,而且,实现同样样式的不同标记,我也不做介绍,我认为最好的使用方案是,不需要知道每一种标记,同一种样式我们只约定使用一种标记格式即可,一点是写出来的代码更加规范,二者就是学习记忆的时候减轻压力。
其实markdown文档中的这些语法会被解释成HTML代码,所以如果你的HTML很好,完全可以在里面写HTML和css的代码,完全会显示出相应的样式。
markdown这个标记语言有意思的是在不同的解释器中看到的样子还有些不同,所以在学习的时候不要太过在意所显示的样式的细节,这些东西取决于解释器。
正文
markdown的正文内容很好写,就按照一篇HTML文档写就可以了;但是不需要写那些样板代码,直接写普通文字或者我们想要嵌入的HTML标签和css样式即可。
markdown文档的换行也和HTML是类似的,你敲一个换行符他会当做什么都没发生,想要换行你可以使用HTML的<br>标签或者是两段文字中间空一行。
标题
使用n个#加一个空格表示n级标题。
例如:
# 一级标题
## 二级标题
### 三级标题
列表
无序列表
使用*加一个空格表示,还可以使用 + - 表示,和 * 是一样的。建议在文档中使用自己喜欢的一种,而且在一组列表中不要混用多种标签,这样在不同的解释器中可能会被解释成不同的列表组。
代码:
* 1
* 2
- 3
- 4
+ 5
+ 6
样式:
- 1
- 2
- 3
- 4
- 5
- 6
有序列表
使用正常的数字加一个.和空格表示。有序列表的序号有些解释器会根据第一行列表的数字顺序来递增的,还有一种会默认从1开始递增。
代码:
1. 1
2. 2
3. 3
样式:
- 1
- 2
- 3
代码:
3. 3
2. 2
1. 1
博客中样式:
- 3
- 2
- 1
markdown解释器样式:
区块引用
区块引用使用>表示,为了代码的美观性,我们也在后面加一个空格表示。
代码:
> 这是一个区块引用
> 这是另一个区块引用
>> 这是一个二级嵌套引用
>>> 这是一个三级嵌套引用
博客中样式:
这是一个区块引用
这是一个区块引用
这是一个二级嵌套引用
这是一个三级嵌套引用
markdown解释器样式:
链接
行内式
行内式的链接格式是:链接的文字放在[]中,链接地址放在随后的()中。
代码:
[我的博客](https://my.oschina.net/epoch/home)
经常出现的列表链接就应该这样写
* [Django介绍与框架整合,并使用MySQL实现增删改查](https://my.oschina.net/epoch/blog/1788273)
* [Python3的介绍、安装和命令行的认识](https://my.oschina.net/epoch/blog/1787262)
* ...
样式:
经常出现的列表链接就应该这样写
参数式
链接还可以带title属性,好像也只能带title,带不了其他属性,注意,是链接地址后面空一格,然后用引号引起来。
代码:
[blog]: https://my.oschina.net/epoch/home "我的博客"
这是我的[blog],我想看到我的中文提示[我的博客](https://my.oschina.net/epoch/home "KevinBruce的博客")
样式:
如果我们在文中可能会多次使用这个链接,我们可以单独拆分出来定义标签名称;如果只是使用一次直接使用行内式即可。
图片
用法跟链接的基本一样,唯一的不同就是,图片前面要写一个!(这是必须的),没什么好说的。
行内式
代码:
![我的图片](https://static.oschina.net/uploads/user/1808/3617290_100.jpeg?t=1523231638000 "我的开源中国博客logo")
样式:
参数式
代码:
[我的logo]: https://static.oschina.net/uploads/user/1808/3617290_100.jpeg?t=1523231638000 "我的开源中国博客logo"
这是参数式的引用![我的logo]
样式:
这是参数式的引用
代码块
单行代码块
如果代码量比较少,只有单行的话,可以用单反引号包起来。反引号是键盘esc键下方的那个按键。
代码:
`<p>这是一个代码块</p>`
样式:
<p>这是一个代码块</p>
多行代码块
如果代码比较多,用单行写不完,那么可以使用三个反引号来引用代码块。也可以使用一个tab或者是四个空格来表示 代码
```这里可以写注释,这些内容不会显示在页面的。
这里还可以写多行
还可以写一行
还可以写更多
```
样式:
这里还可以写多行
还可以写一行
还可以写更多
表格
表格的格式不一定要对的非常齐,但是为了好看,对齐肯定是最好的,分割线后面的冒号表示对齐方式,写在左边表示左对齐,右边为右对齐,两边都写表示居中,还是有点意思的。
代码:
| 姓名 | 年龄 | 性别 |
|:-----|-----:|:-----:|
|Kevin | 18 | 男 |
|Jack | 17 | 女 |
|Bruce | 19 | 男 |
样式:
姓名 | 年龄 | 性别 |
---|---|---|
Kevin | 18 | 男 |
Jack | 17 | 女 |
Bruce | 19 | 男 |
分隔线
分割线可以由* - _(星号,减号,底线)这3个符号的至少3个符号表示,注意至少要3个,且不需要连续,有空格也可以,但是两个符号之间最多只能有一个空格。建议使用减号-表示
代码:
---
_ _ _
* **
样式:
删除线
代码:
~~删除我吧~~
样式:
删除我吧
转义
转义就是将一些特殊字符转换成正常显示的样子,和大多数编程语言相同使用反斜杠(\)表示。下面简单列举几个。
代码:
* \\
* \`
* \*
* \!
样式:
- \
- `
- *
- !
强调
一个星号或者是一个下划线包起来,会转换为<em>倾斜,如果是2个,会转换为<strong>加粗
代码:
*字体倾斜*
_字体倾斜_
**字体加粗**
__字体加粗__
样式:
字体倾斜 字体倾斜
字体加粗 字体加粗