Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。
我会以事例和效果的方式来展示,方便大家对照学习。
一、基础语法
1.1 标题
Markdown支持6种级别的标题,对应html标签 h1 ~ h6
# h1
## h2
### h3
#### h4
##### h5
###### h6
效果如下:
h1
h2
h3
h4
h5
h6
1.2 段落及区块引用
段落:
需要记住的是,Markdown其实就是一种易于编写的普通文本,只不过加入了部分渲染文本的标签而已。其最终依然会转换为html标签,因此使用Markdown分段非常简单,前后至少保留一个空行即可。
引用:
我们可能希望对某段文字进行强调处理。Markdown提供了一个特殊符号 > 用于段首进行强调,被强调的文字部分将会高亮显示
>这段文字将被高亮显示...
这段文字将被高亮显示...
1.3 插入链接或图片
插入链接和插入图片的区别只有一个!
[]:链接或图片的描述信息
():链接地址或图片地址
插入链接:
[-随风的草稿箱](https://www.jianshu.com/u/5507a8b30a76)
-随风的草稿箱
插入图片:
![风景照](https://upload-images.jianshu.io/upload_images/16521770-5a425b5a98c8a9e9.jpeg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
1.4 列表
Markdown支持有序列表和无序列表
有序列表使用数字加.标识,例如:1. 黄瓜(.与文字之间加上一个空格)
1. 黄瓜
2. 玉米
3. 茄子
- 黄瓜
- 玉米
- 茄子
注:这里比较有趣的地方是,对于有序列表,Markdown将只关注你的第一个项目的数字编号。例如:如果第一个项目编号是3,以此类推,第二个项目应该是4,最终将显示为3、4、5。而如果你指定了第一个编号,后面的编号指定错误也没有关系,Markdown将只在乎你的第一个项目编号。
无序列表使用*或+或-标识,后面需要加一个空格
+ 黄瓜
+ 玉米
+ 茄子
- 黄瓜
- 玉米
- 茄子
* 黄瓜
* 玉米
* 茄子
- 黄瓜
- 玉米
- 茄子
- 黄瓜
- 玉米
- 茄子
- 黄瓜
- 玉米
- 茄子
使用列表的一些注意事项
如果在单一列表项中包含了多个段落,为了保证渲染正常,没有*的段落需要缩进4个空格或者一个制表符
* 段落一
小段落一
* 段落二
小段落二
- 段落一
小段落一 - 段落二
小段落二
另外,如果在列表中加入了区块引用,区域引用标记符也需要缩进4个空格或者一个制表符
* 段落一
> 区块标记一
* 段落二
> 区块标记二
- 段落一
区块标记一
- 段落二
区块标记二
总结:记住一个原则,如果在和列表配合使用的时候出现了问题,就缩进一次,四个空格或者一个制表符代表一次缩进。如果一次缩进没有解决问题,那就两次。
1.5 分隔线
有时候,为了排版漂亮,可能会加入分隔线。Markdown加入分隔线非常简单,使用下面任意一种形式都可以
***
---
1.6 强调
对某一部分文字进行强调,使用*或_包裹即可。
使用单一符号标记的效果是斜体,使用两个符号标记的效果是加粗。
*这里是斜体*
_这里是斜体_
**这里是加粗**
__这里是加粗__
这里是斜体
这里是斜体
这里是加粗
这里是加粗
二、高级用法
2.1 插入代码块
Markdown在IT圈子里面比较流行的一个原因是,它能够轻松漂亮地插入代码。方法:使用反引号`进行包裹即可。
如果是行内代码引用,使用单个反引号进行包裹
`var x = 3`
var x = 3
如果插入一整段代码,需要至少使用三个或以上反引号进行包裹,效果如下:
fun (x: Int, y: Int): Int {
return x + y
}
注:很多人不知道怎么输入反引号。在英文模式下,找到键盘最左侧esc键下面的第一个键。
2.2 插入表格
姓名|技能|排行
--|:--:|--:
刘备|哭|大哥
关羽|打|二哥
张飞|骂|三弟
姓名 | 技能 | 排行 |
---|---|---|
刘备 | 哭 | 大哥 |
关羽 | 打 | 二哥 |
张飞 | 骂 | 三弟 |
解释:
第二行分割表头和内容。
-
有一个就行,为了对齐,多加了几个
文字默认居左
:加在左边:表示文字局左
:加在右边:表示文字居右
:加在两边:表示文字居中
注:原生的语法两边都要用 | 包起来。此处省略
三、其它
3.1特殊符号处理
Markdown使用反斜杠\来转义用到的特殊符号。在Markdown中,主要有以下几种特殊符号需要处理:
\ 反斜线
` 反引号
* 星号
_ 底线
{} 花括号
[] 方括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句点
! 惊叹号
例如,如果你需要插入反斜杠,就连续输入两个反斜杠即可:\\ => \ 。
注:在内容中输入以上特殊符号的时候一定要注意转义,否则将导致内容显示不全,甚至排版混乱。
3.2 如何给文字上色
Markdown的最初目标就是为纯写作而生的,因此,它并没有考虑文字颜色这一点。
单纯使用Markdown设置文字颜色已经做不到了。但你可以这样做:
- 先用Markdown编辑完成
- 导出为html,在需要上色的部分手动添加标签保存即可。
Markdown软件推荐
如果你是一个Mac用户,我推荐你使用开源的MacDown
;
一些收费产品其实更好,例如:Byword,Ulysses,Typora等等都很不错。
提供一个在线Markdown编辑器:Cmd Markdown
简单总结
Markdown是一门比html更简单的标记语言,其主要用于日常写作。最终通过相应的编辑器或者脚本转换成html用于页面渲染。
如果你是一个作家,或者是一个程序员,Markdown对你来说是一门必备的技能。掌握Markdown真的很简单,如你所见,这篇文章使用了这么短的篇幅就已经将Markdown的语法全部介绍完了。
不过,由于Markdown基础语法的限制,出现了一些针对Markdown语法的加强版本。它支持的语法特性更多,但这不是我们这篇文章的讨论范围。如果你希望快速掌握Markdown,很简单,动起来吧!