前言:
Markdown所具备的诸多优点,致使其在程序员、极客圈、自媒体圈和作家圈非常流行。
markdown优点:
1.极强的兼容性,纯文本,很多纯文本工具就可以打开。(这就避免了很多尴尬,发给领导的策划方案word版本太新,打不开;mac下的.pages格式打不开doc格式;好不容易能打开了,我擦,怎么显示不一样呢?)
2.让你专注于码字本身而非排版。(markdown本身的轻简决定了它更能让你专注于写作本身,而非排版,word上你能用到的功能可能只有20%,我们大部分的需求markdown就能完美胜任,你说txt纯文本不是更能专注么?你用记事本来给我加个粗看看!专注文字相对排版来说更加重要,但如果你写的是诗歌类的,排版也追求极致,行间距也各不一样,请弃坑。)
3.格式转化非常方便。(本身就属于标记语言,对于转化为html和各种电子书格式更加轻松,电子书本身就是html转化而来,html也是标记语言,这种格式转化就方便很多。)
4.易学易读性。markdown语法超级简单,如果你之前有过html经验,那这对你来说简直不能太简单,对没接触过的人只要不是很懒,也是so esay。写完后易读性也非常棒。
5.什么?以上理由都不觉得,那么装逼的理由够了吧。逼格满满,出去一说用markdown写文档,一下逼格就起来了,什么当?马克当!马克什么当?.......
段落:
非常自然,一行文字就是一个段落。
比如
这是一个段落。
会被解释成<p>这是一个段落。</p>
如果你需要另起一段,直接回车换行就行。
这是一个段落。
这是另一个段落。
会解释成
<p>这是一个段落<p>
<p>这是另一个段落</p>
不隔一个空行的换行行为,在一些编辑器中被解释为换行,即插入一个<br />
标签。对与另外一些编辑器,会被解释为插入一个空格。对于后者,若要插入换行标签,请在当前一行的结尾打两个空格。
标题(Atx方式):
在html里标题分为六级,h1、h2、h3、h4、h5、h6,相应的,markdown标题也是六级。写法变为标题前面加一个#
号,标注的写法是#
号后与标题文字间留一个字符的空格。
# 我是标题一
## 我是标题二
### 我是标题三
#### 我是标题四
##### 我是标题无
###### 我是标题六
测试后可以看到,标题六字体最小,标题一字体最大,大代表重要嘛。
我是标题一
我是标题二
我是标题三
我是标题四
我是标题无
我是标题六
标题(Setext方式):
有时候篇幅较短,没必要分出六级,只需要大小标题,这就是和这种方式,写法是在标题文字下用-
和=
符号,但是要-
和=
符号的数量大于等于2个才行。
我是大标题
==
我是小标题
--
我是大标题
我是小标题
分割线写法:
分割线写法很简单只需要三个或更多-
或_
或*
,但必须是单独一行才行,可含空格。
---------------------
***
_____
_ _ _ _
列表:
列表在文章中使用频率非常高,总结,观点,事项等都需要列表。html里面列表需要ul>li
或者ol>li
或者dl>dd
,但在markdown里面,简直不要太简单啊。只需要在列表前加连接符-
或+
或*
即可,三个符号不能混合使用(混合使用就是列表嵌套了),内容可以很长。我们来试试:
- 我是列表
- 我也是列表
- 我还是列表长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长
+ 我是列表
+ 我也是列表
+ 我还是列表长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长
* 我是列表
* 我也是列表
* 我还是列表长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长
- 我是列表
- 我也是列表
- 我还是列表长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长
- 我是列表
- 我也是列表
- 我还是列表长长长长长长长长长长长长长长长长长长长长长长长
- 我是列表
- 我也是列表
- 我还是列表长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长长
想要的不是圆点的无序列表,想要数字的有序列表,只需要在列表前加1. 2. 3.
即可,数字不能省略但可无序,来走起:
1. 我是有序列表1
2. 我是有序列表2
3. 我是有序列表3
3. 我是有序列表1
9. 我是有序列表2
1. 我是有序列表3
- 我是有序列表1
- 我是有序列表2
- 我是有序列表3
- 我是有序列表1
- 我是有序列表2
- 我是有序列表3
很简单吧,但一定要注意,符号之后的空格不能少,-
和1.
与文字间一定要留个字符空格,否则无法正常显示。
如果需要嵌套列表,则需要-+*几个符号循环混用,但符号之前和之后的空格都不能少:
- 嵌套列表1
* 嵌套列表2
* 嵌套列表3
+ 嵌套列表4
- 嵌套列表5
- 嵌套列表1
- 嵌套列表2
- 嵌套列表3
- 嵌套列表4
- 嵌套列表5
删除线:
一部分编辑器支持删除线,它不是经典markdown中的要素。用波浪线~
定义删除线。
如:
~~就像这样~~
就像这样
会被解释成<strike>就像这样</strike>
强调:
markdown下想要斜体只需要用*
号或_
把你想斜体的文字包裹起来,前面一个后面一个,单个就是斜体,双个就是粗体。斜体和粗体在文字中都是起强调作用,粗体要比斜体强调味道更重写,所以,粗体写法就是前后各加两个符号。粗体加斜体就是前后各加三个符号。来走一遍:
*我是斜体*
_我是斜体_
我是斜体
我是斜体
**我是粗体**
__我是粗体__
我是粗体
我是粗体
___我是粗体加斜体___
***我是粗体加斜体***
我是粗体加斜体
我是粗体加斜体
注意了,敲黑板,符号是可跨行的,符号也可加空格或者不加。
我在给你**强
调**一遍:
我才是世界上_最帅_的男人!
我在给你强
调一遍:
我才是世界上最帅的男人!
文字链接:
插入链接不需要其他按钮,你只需要使用[显示文本](链接地址 "提示文字")
这样的语法即可,提示文字可以用双引号,单引号。并且要和链接地址有空格。 例如:
[百度](http://www.baidu.com "百度")
[百度](http://www.baidu.com '百度')
注意:括号是英文状态下的,否则显示有问题。
文字链接有两种,上面的是常见的内链方式,还有一种叫引用方式。引用方式适合添加多个网址的文章,可以避免在正文中出现大量网址,保持编辑可读性;也适合同一网址多处引用,当网址有改动或修改时,只需修改列表即可,无需逐个修改,类似宏定义。(注意:[]和网址之间的冒号是英文字符,网址和后面名称之间有空格,)例如:
点[简书][1]写文章
点[知乎][2]搜知识
点[谷歌][3]搜图片
点[百度][4]搜医院
点[github][5]搜代码
[1]:http://jianshu.com "简书"
[2]:http://zhihu.com "知乎"
[3]:http://google.com "谷歌"
[4]:http://baidu.com "百度"
[5]:http://github.com "github"
点简书写文章
点知乎搜知识
点谷歌搜图片
点百度搜医院
点github搜代码
markdown 实现目录页内跳转:
方法一:markdown实现
* [第一章](#1)
- [第一节](#1.1)
- [第二节](#1.2)
- [第三节](#1.3)
* [第二章](#2)
- [第一节](#2.1)
- [第二节](#2.2)
- [第三节](#2.3)
在正文中,只要将章节标题的id对应上去即可:
<h2 id="1">第一章</h2>
第一章
第一章
第一章
第一章
第一章
<h3 id="1.1">第一节</h3>
第一章第一节
第一章第一节
第一章第一节
第一章第一节
第一章第一节
<h3 id="1.2">第二节</h3>
第一章第二节
第一章第二节
第一章第二节
第一章第二节
第一章第二节
<h3 id="1.3">第三节</h3>
第一章第三节
第一章第三节
第一章第三节
第一章第三节
第一章第三节
<h2 id="2">第二章</h2>
第二章
第二章
第二章
第二章
第二章
<h3 id="2.1">第一节</h3>
第二章第一节
第二章第一节
第二章第一节
第二章第一节
第二章第一节
<h3 id="2.2">第二节</h3>
第二章第二节
第二章第二节
第二章第二节
第二章第二节
第二章第二节
<h3 id="2.3">第三节</h3>
第二章第三节
第二章第三节
第二章第三节
第二章第三节
第二章第三节
在正文中,只要将章节标题的id对应上去即可:
<h2 id="1">第一章</h2>
第一章
第一章
第一章
第一章
第一章
<h3 id="1.1">第一节</h3>
第一章第一节
第一章第一节
第一章第一节
第一章第一节
第一章第一节
<h3 id="1.2">第二节</h3>
第一章第二节
第一章第二节
第一章第二节
第一章第二节
第一章第二节
<h3 id="1.3">第三节</h3>
第一章第三节
第一章第三节
第一章第三节
第一章第三节
第一章第三节
<h2 id="2">第二章</h2>
第二章
第二章
第二章
第二章
第二章
<h3 id="2.1">第一节</h3>
第二章第一节
第二章第一节
第二章第一节
第二章第一节
第二章第一节
<h3 id="2.2">第二节</h3>
第二章第二节
第二章第二节
第二章第二节
第二章第二节
第二章第二节
<h3 id="2.3">第三节</h3>
第二章第三节
第二章第三节
第二章第三节
第二章第三节
第二章第三节
方法二:html 实现
定义一个锚链接
<span id="jump">要跳转到的地方-文章顶部</span>
使用 markdown语法跳转
[点击跳转到文章顶部](#jump)
点击跳转到文章顶部
<span id="jump">要跳转到的地方-文章顶部</span>
简书上好像不支持这个,会原样输出。博客园的可以。
插入图片:
插入图片相比插入链接前面只是多个感叹号,中括号里面的文字变为图片描述问题,Tooltips可省略,要设置大小需要使用<img>标签。
![百度](https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png)
![度娘](https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png "度娘")
自动链接:
用尖括号括起来就行,要求尖括号里面必须是链接形式,不能是纯文本。如:
<百度>
<http://www.baidu.com>
<743043790@qq.com>
<https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png>
http://www.baidu.com
743043790@qq.com
https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png
引用文字
引用文字只需要在要引用的文字前加>
符号并和文本之间保留空格。如:
> 窗前明月光,你光来悲伤
窗前明月光,你光来悲伤
引用代码
需要引用代码时,如果引用的语句只有一段,不分行,可以用反引号`
将内联代码语句包起来,它们会解释成<code>
标签(如果代码的内容中有反引号,请用两个反引号包裹,与前后两个反引号之间加空格。代码中的&、<、>符号都会自动转义)。如果引用的语句为多行,可以将三个反引号```置于这段代码的首行和末行。看不清这个符号的,在tab键上面那个,反引号就是。如:
`<strong>我是强调标签</strong>`
<strong>我是强调标签</strong>
<html>
<head>
<title>我的第一个 HTML 页面</title>
</head>
<body>
<p>body 元素的内容会显示在浏览器中。</p>
<p>title 元素的内容会显示在浏览器的标题栏中。</p>
</body>
</html>
另外还有一种原生的风格来标记代码区域,即行首缩进四个空格(这个支持的并不好,不建议使用)。
引用嵌套:
如:
> This is the first level of quoting.
>
> > This is nested blockquote.
>
> Back to the first level.
This is the first level of quoting.
This is nested blockquote.
Back to the first level.
也可以嵌套其他格式:
> ##### 这是一个标题。
>
> 1. 这是第一行列表项。
> 2. 这是第二行列表项。
>
> 给出一些例子代码:
>
> return shell_exec("echo $input | $markdown_script");
这是一个标题。
- 这是第一行列表项。
- 这是第二行列表项。
给出一些例子代码:
return shell_exec("echo $input | $markdown_script");
表格
| 列表一 | 列表二 | 列表三 |
| ----- |:-----:| ----:|
| 哈哈 | 哈哈 | 哈哈 |
| 哈哈 | 哈哈 | 哈哈 |
| 哈哈 | 哈哈 | 哈哈 |
列表一 | 列表二 | 列表三 |
---|---|---|
哈哈 | 哈哈 | 哈哈 |
哈哈 | 哈哈 | 哈哈 |
哈哈 | 哈哈 | 哈哈 |
或者是
午饭 | 早饭 | 晚饭
------|--------|--------
饺子 | 饺子 | 饺子
饺子 | 饺子 | 饺子
午饭 | 早饭 | 晚饭 |
---|---|---|
饺子 | 饺子 | 饺子 |
饺子 | 饺子 | 饺子 |
转义
markdown支持在以下字符前面插入反斜杠 \ 。
\ 反斜线
` 反引号
* 星号
_ 底线
{} 花括号
[] 方括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句点
! 惊叹号
插入之后,将不再解析这些字符,而是原样输出。如:
\ 反斜线
` 反引号
* 星号
_ 底线
{} 花括号
[] 方括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句点
! 惊叹号
段落缩进(空格)
打发士大夫撒旦法 或 看,飞碟
范德萨发的 或 看,飞碟
范德萨发的分 或 到底,飞碟
段落从此开始。
打发士大夫撒旦法 或 看,飞碟
范德萨发的 或 看,飞碟
范德萨发的分 或 到底,飞碟
段落从此开始。
内联 HTML
markdown 的语法简洁,但有其局限性,所以特意保留了内联html这种方式。任何html标签及其内容,都会原样输出到结果中。也就是说,标签中的星号等作为markdown结构的符号,以及构成html标签和实体的符号,都不会做任何转义。
字体、字号、颜色
<font face="黑体">我是黑体字</font>
<font face="微软雅黑">我是微软雅黑</font>
<font face="STCAIYUN">我是华文彩云</font>
<font color=#0099ff size=12 face="黑体">黑体</font>
<font color=#00ffff size=3>null</font>
<font color=gray size=5>gray</font>
具体见html写法。
刚接触,算是入门了,惊喜有,失望也有,具体要看使用场景了,这个排版确实不行,word还是需要滴。
参考:http://www.kancloud.cn/wizardforcel/markdown-simple-world/97373