MarkDown 基础教程

MarkDown 基础教程

简介

MarkDown是一个在Web上使用的文本到HTML转换工具,可以通过简单、易读易写的文本格式生成结构化的HTML文档。对于MarkDown来说其设计的目标是【易读易写,成为一种适用于网络的书写语言】。MarkDown相对来说非常简单,可以花费很少的时间就能掌握,所以希望能通过这一篇文章能共同学习好MarkDown使用

声明

本文中的内容属于个人总结整理而来,个人水平有限,对于部分细节难免有理解错误及遗漏之处,如果您在阅读过程中有所发现,希望您能指正,同时文章中的部分内容也参考了其它大神的文章,如果文章中的内容侵犯了您的权益,表示非常歉意,请您指出,我将尽快修改。

如果您进行转载,请标明出处。

MarkDown学习笔记(http://www.liyubin.com/articles/2019/03/15/1552614146737.html)

MarkDown与HTML

MarkDown并不是要取代HTML,甚至没有要和它相近,MarkDown的语法种类很少,只对应于HTML中标记的很小的一部分。可以理解为MarkDown是一种书写格式,而HTML是一种发布格式,可以在MarkDown文档中直接使用HTML的标签书写

基本语法

1. 段落和换行

MarkDown的段落由一个或者多个连续的文本行组成,前后要有一个以上的空行,普通的段落不应该用空格或者制表符来缩进。如果MarkDown中希望加入换行的话,需要插入两个以上的空行

2. 标题

MarkDown支持两种标题的语法,类Setext和类atx形式

  • 类Atx形式

    类Atx形式是在行首插入1到6个#,并加入一个空格,对应到标题1到6阶,对应于html中的h1~h6,例如:

    # 标题1
    ## 标题2
    ### 标题3
    #### 标题4
    ##### 标题5
    ###### 标题6
    
  • 类Setext形式

    类Setext形式是用底线的形式,在需要设置为标题的下一行中使用=(最高阶标题)和_(第二阶标题),任何数量的=和_都是可以的,例如:

    标题1
    =====
    标题2
    ______
    

PS: 由于类Setext形式只有两种表现形式,文字大小控制级别有限,再加上部分工具并不支持,所以一般情况下强烈推荐使用类Atx形式

3. 区块引用(Blockquotes)

MarkDown可以在每行或者整个段落最前面加上>来表示引用方式。

区域引用可以嵌套,可以根据层次加上不同数量的>,对于>的数量没有限制

引用的区块内可以使用其它的MarkDown的语法,包括标题、列表、代码区块等。

> This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

> Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.

> ## 这是一个标题。
> 
> 1.   这是第一行列表项。
> 2.   这是第二行列表项。
> 
> 给出一些例子代码:
> 
>     return shell_exec("echo $input | $markdown_script");

显示效果为:

This is a blockquote with two paragraphs. Lorem ipsum dolor sit amet,
consectetuer adipiscing elit. Aliquam hendrerit mi posuere lectus.
Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.

Donec sit amet nisl. Aliquam semper ipsum sit amet velit. Suspendisse
id sem consectetuer libero luctus adipiscing.

这是一个标题。

  1. 这是第一行列表项。
  2. 这是第二行列表项。

给出一些例子代码:

  return shell_exec("echo \$input | \$markdown_script");

4. 列表

MarkDown支持有序列表和无序列表

  • 无序列表
    可以使用星号(*)、加号(+)和减号(-)作为列表标记开始,接上一个空格

    * Red
    + Green
    - Blue
    

    转换为HTML:

    <ul>
      <li>Red</li>
      <li>Green</li>
      <li>Blue</li>
    </ul>
    

    显示效果为:

    • Red
    • Green
    • Blue
  • 有序列表
    可以使用数字再接上一个英文的点号(.),再接上一个空格来表示有序列表

    1. Red
    2. Green
    3. Blue
    

    转换成HTML:

    <ol>
      <li>Red</li>
      <li>Green</li>
      <li>Blue</li>
    </ol>
    

    显示效果为:

    1. Red
    2. Green
    3. Blue

PS: 列表项目标记一般放在最左边,其实是可以添加缩进的,最多3个空格,标记后面至少要有一个空格或者制表符(推荐使用空格).如果文档中某行行首出现了数字+点号+空格的情况,需要在点号前加上反斜杠

5. 代码

如果要标记一小段行内代码,你可以用反引号把它包起来(`),例如:

Use the `printf()` function.

转成HTML:

<p>Use the <code>printf()</code> function.</p>

显示效果为:

Use the printf() function.

对于大段的代码可以使用多个反引号,来标记开启与结束代码区段,如:

    ```
    int i = 10;
    print(i)
    ```

6. 分隔线

在一行中使用三个及三个以上的星号(*)、减号(-)或下划线(_)符号可以建立一个分隔线,行内不能有其它的东西,但是可以在符号中间插入空格,如:

------
******
- - - - 
_______

7. 强调(字体样式)

MarkDown使用星号(*)和(_)作为标记强调字词的符号,被*和_包围的字词会被转成<em>标签,一个*或者_会做为斜体,两个*或者_会加粗,例如:

  • 斜体

    *斜体字词*
    _斜体字词_
    

    会转成HTML:

    <em>斜体字词</em>
    

    显示为:

    斜体字词

  • 加粗

    **加粗字词**
    __加粗字词__
    

    会转成HTML:

    <strong>加粗字词</strong>
    

    显示为:

    加粗字词

    可以随便使用任何一个符号,唯一的限制是用什么符号开启标签,就必须要使用什么符号结束,强调也可以直接插在文字中间,如果*与_两边都有空白的话,他们会被当成普通的符号,如果要在文字前后直接插入星号或者底线,也可使用反斜线

    *this text is surrounded by literal asterisks*
    
  • 斜体并加粗

    ***斜体并加粗***
    ---斜体并加粗---
    
  • 删除线

    ~~删除线~~
    

    显示为:

    删除线

8. 反斜杠(特殊符号处理)

Markdown 可以利用反斜杠来插入一些在语法中有其它意义的符号
Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:

\   反斜线
`   反引号
*   星号
_   底线
{}  花括号
[]  方括号
()  括弧
#   井字号
+   加号
-   减号
.   英文句点
!   惊叹号

9. 链接

MarkDown支持两种形式的链接语法:行内式和参考式,两种形式都是用方括号([])来标记

  • 行内式链接

    只要在方括号后面紧接着圆括号并插入网址链接即可,如果想要加上链接的title文字,只要在网址后面用双引号把Ttitle文字包括起来即可,例如:

    这是一篇关于[MarkDown](www.liyubin.com "www.liyubin.com")的文章
    
    [This link](http://example.net/) has no title attribute.
    

    转换成HTML:

    <p>这是一篇关于<a href="http://www.liyubin.com" title="www.liyubin.com">
    MarkDown</a>的文章</p>
    

    显示效果为:

    这是一篇关于MarkDown的文章

  • 参考式链接
    推荐使用行内式链接

10. 图片

MarkDown使用类似于链接的形式标记图片,也允许使用:行内式和参考式

  • 行内式
    以感叹号(!)开始,接着一个方括号([]),括号内是替换文字,接着再使用一个小括号(()),括号内添加图片的路径(可以是相对路径,也可以是网址),需要显示标题的话,在括号中使用引号包住Title的文字(Title的文字是可选的)

    
    ![Image](/path1/path2/image.png)
    
    ![Image](/path1/path2/image.png "Title title")
    
    
  • 参考式

    推荐使用行内式

PS:MarkDown无法指定图片的宽度与调试,如果需要设定的话,需要使用<img>标签

<img src = "imagePath" alt = "altName" width = "111" height = "111">showName</img>

11. 自动链接

MarkDown支持比较简短的自动链接形式处理网址和电子邮件信箱,只要用方括号包起,MarkDown自动会把它处理成链接

  • 网址

    <http://www.liyubin.com/>
    

    会转成HTML:

    <a href = "http://www.liyubin.com">http://www.liyubin.com/</a>
    

    显示为:

    http://www.liyubin.com

  • 电子邮箱

    <emailadress@163.com>
    

    会转成HTML

    <a href = "mailto:emailadress@163.com">emailadress@163.com</a>
    

    显示为:

    emailadress@163.com

    MarkDown会将邮箱地址先做一个编码转换,把文字字符转成16进位码的HTML的实体

12. 表格

表格基本形式如下:

|长长表头1|长长表头2|长长表头3|
|:--:|--:|:--|
|内容1|内容2|内容3|

显示效果为:

长长表头1长长表头2长长表头3
内容1内容2内容3

PS:第二行中:—代表左对齐,—:代表右对齐,:—:代表居中对齐,-数目至少一个,:没有默认左对齐,第二行必须有,否则不是表格形式

13. 流程图

忽略,忽略,忽略,有兴趣的可以单独查看

13. 文字上色

Markdown的最初目标就是为纯写作而生的。因此,它并没有考虑文字颜色这一点。所以,单纯使用Markdown设置文字颜色已经做不到了,但是可以借助于Html标签为文字上色,如:

使用 <font color="red">HTML</font> 标签 <font color="blue">为</font>字体上色

显示效果为:

使用 HTML 标签 字体上色

PS: 特此附上个人准备的颜色表:Html 常用颜色值

参考资料

相关阅读

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值