热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Markdown官方教程

Markdown官方教程Markdown是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,Markdown文件的后缀名便是“.md”。

Markdown 官方教程

Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,Markdown文件的后缀名便是“.md”。


Markdown 标题语法

要创建标题,请在单词或短语前面添加井号 (#) 。# 的数量代表了标题的级别。例如,添加三个 # 表示创建一个三级标题 (

) (例如:### My Header)。


Markdown语法HTML预览效果
# Heading level 1

Heading level 1

Heading level 1

## Heading level 2

Heading level 2

Heading level 2

### Heading level 3

Heading level 3

Heading level 3

#### Heading level 4

Heading level 4

Heading level 4

##### Heading level 5
Heading level 5

Heading level 5

###### Heading level 6
Heading level 6

Heading level 6


最佳实践

不同的 Markdown 应用程序处理 # 和标题之间的空格方式并不一致。为了兼容考虑,请用一个空格在 # 和标题之间进行分隔。


✅  Do this❌  Don't do this
# Here's a Heading#Here's a Heading

Markdown 段落

要创建段落,请使用空白行将一行或多行文本进行分隔。


Markdown语法HTML预览效果
I really like using Markdown.

I think I'll use it to format all of my documents from now on.

I really like using Markdown.



I think I'll use it to format all of my documents from now on.

I really like using Markdown.

I think I'll use it to format all of my documents from now on.


段落(Paragraph)用法的最佳实

不要用空格(spaces)或制表符( tabs)缩进段落。


✅  Do this❌  Don't do this
Don't put tabs or spaces in front of your paragraphs.

Keep lines left-aligned like this.

 
    This can result in unexpected formatting problems.

  Don't add tabs or spaces in front of paragraphs.

Markdown 换行语法

在一行的末尾添加两个或多个空格,然后按回车键,即可创建一个换行(
)。


Markdown语法HTML预览效果
This is the first line.  
And this is the second line.

This is the first line.

And this is the second line.

This is the first line.
And this is the second line.


换行(Line Break)用法的最佳实践

几乎每个 Markdown 应用程序都支持两个或多个空格进行换行,称为 结尾空格(trailing whitespace) 的方式,但这是有争议的,因为很难在编辑器中直接看到空格,并且很多人在每个句子后面都会有意或无意地添加两个空格。由于这个原因,你可能要使用除结尾空格以外的其它方式来换行。幸运的是,几乎每个 Markdown 应用程序都支持另一种换行方式:HTML 的 
 标签。

为了兼容性,请在行尾添加“结尾空格”或 HTML 的 
 标签来实现换行。

还有两种其他方式我并不推荐使用。CommonMark 和其它几种轻量级标记语言支持在行尾添加反斜杠 (\) 的方式实现换行,但是并非所有 Markdown 应用程序都支持此种方式,因此从兼容性的角度来看,不推荐使用。并且至少有两种轻量级标记语言支持无须在行尾添加任何内容,只须键入回车键(return)即可实现换行。


✅  Do this❌  Don't do this
First line with two spaces after.  
And the next line.

First line with the HTML tag after.

And the next line.

 
First line with a backslash after.\
And the next line.

First line with nothing after.
And the next line.

Markdown 强调语法

通过将文本设置为粗体或斜体来强调其重要性。


粗体(Bold)

要加粗文本,请在单词或短语的前后各添加两个星号(asterisks)或下划线(underscores)。如需加粗一个单词或短语的中间部分用以表示强调的话,请在要加粗部分的两侧各添加两个星号(asterisks)。


Markdown语法HTML预览效果
I just love bold text.I just love bold text.I just love bold text.
I just love bold text.I just love bold text.I just love bold text.
LoveisboldLoveisboldLoveisbold

粗体(Bold)用法最佳实践

Markdown 应用程序在如何处理单词或短语中间的下划线上并不一致。为兼容考虑,在单词或短语中间部分加粗的话,请使用星号(asterisks)。


✅  Do this❌  Don't do this
Love**is**boldLove__is__bold

斜体(Italic)

要用斜体显示文本,请在单词或短语前后添加一个星号(asterisk)或下划线(underscore)。要斜体突出单词的中间部分,请在字母前后各添加一个星号,中间不要带空格。


Markdown语法HTML预览效果
Italicized text is the *cat's meow*.Italicized text is the cat's meow.Italicized text is the cat’s meow.
Italicized text is the _cat's meow_.Italicized text is the cat's meow.Italicized text is the cat’s meow.
A*cat*meowAcatmeowAcatmeow

斜体(Italic)用法的最佳实践

要同时用粗体和斜体突出显示文本,请在单词或短语的前后各添加三个星号或下划线。要加粗并用斜体显示单词或短语的中间部分,请在要突出显示的部分前后各添加三个星号,中间不要带空格。


✅  Do this❌  Don't do this
A*cat*meowA_cat_meow

粗体(Bold)和斜体(Italic)

要同时用粗体和斜体突出显示文本,请在单词或短语的前后各添加三个星号或下划线。要加粗并用斜体显示单词或短语的中间部分,请在要突出显示的部分前后各添加三个星号,中间不要带空格。


Markdown语法HTML预览效果
This text is ***really important***.This text is really important.This text is really important.
This text is ___really important___.This text is really important.This text is really important.
This text is __*really important*__.This text is really important.This text is really important.
This text is **_really important_**.This text is really important.This text is really important.
This is really***very***important text.This is reallyveryimportant text.This is reallyveryimportant text.

粗体(Bold)和斜体(Italic)用法的最佳实践

Markdown 应用程序在处理单词或短语中间添加的下划线上并不一致。为了实现兼容性,请使用星号将单词或短语的中间部分加粗并以斜体显示,以示重要。


✅  Do this❌  Don't do this
This is really***very***important text.This is really___very___important text.

Markdown 引用语法

要创建块引用,请在段落前添加一个 > 符号。


> Dorothy followed her through many of the beautiful rooms in her castle.

渲染效果如下所示:


Dorothy followed her through many of the beautiful rooms in her castle.



多个段落的块引用

块引用可以包含多个段落。为段落之间的空白行添加一个 > 符号。


> Dorothy followed her through many of the beautiful rooms in her castle.
>
> The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.

渲染效果如下:


Dorothy followed her through many of the beautiful rooms in her castle.

The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.



嵌套块引用

块引用可以嵌套。在要嵌套的段落前添加一个 >> 符号。


> Dorothy followed her through many of the beautiful rooms in her castle.
>
>> The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.

渲染效果如下:


Dorothy followed her through many of the beautiful rooms in her castle.

The Witch bade her clean the pots and kettles and sweep the floor and keep the fire fed with wood.



带有其它元素的块引用

块引用可以包含其他 Markdown 格式的元素。并非所有元素都可以使用,你需要进行实验以查看哪些元素有效。


> #### The quarterly results look great!
>
> - Revenue was off the chart.
> - Profits were higher than ever.
>
> *Everything* is going according to **plan**.

渲染效果如下:


The quarterly results look great!

  • Revenue was off the chart.
  • Profits were higher than ever.

Everything is going according to plan.



Markdown 列表语法

可以将多个条目组织成有序或无序列表。


有序列表

要创建有序列表,请在每个列表项前添加数字并紧跟一个英文句点。数字不必按数学顺序排列,但是列表应当以数字 1 起始。


Markdown语法HTML预览效果
1. First item
2. Second item
3. Third item
4. Fourth item

  1. First item

  2. Second item

  3. Third item

  4. Fourth item

  1. First item
  2. Second item
  3. Third item
  4. Fourth item
1. First item
1. Second item
1. Third item
1. Fourth item

  1. First item

  2. Second item

  3. Third item

  4. Fourth item

  1. First item
  2. Second item
  3. Third item
  4. Fourth item
1. First item
8. Second item
3. Third item
5. Fourth item

  1. First item

  2. Second item

  3. Third item

  4. Fourth item

  1. First item
  2. Second item
  3. Third item
  4. Fourth item
1. First item
2. Second item
3. Third item
    1. Indented item
    2. Indented item
4. Fourth item

  1. First item

  2. Second item

  3. Third item

    1. Indented item

    2. Indented item



  4. Fourth item

  1. First item
  2. Second item
  3. Third item
    1. Indented item
    2. Indented item
  4. Fourth item

有序列表最佳实践

CommonMark and a few other lightweight markup languages let you use a parenthesis ()) as a delimiter (e.g., 1) First item), but not all Markdown applications support this, so it isn’t a great option from a compatibility perspective. For compatibility, use periods only.


✅  Do this❌  Don't do this
1. First item
2. Second item
1) First item
2) Second item

无序列表

要创建无序列表,请在每个列表项前面添加破折号 (-)、星号 (*) 或加号 (+) 。缩进一个或多个列表项可创建嵌套列表。


Markdown语法HTML预览效果
- First item
- Second item
- Third item
- Fourth item

  • First item

  • Second item

  • Third item

  • Fourth item

  • First item
  • Second item
  • Third item
  • Fourth item
* First item
* Second item
* Third item
* Fourth item

  • First item

  • Second item

  • Third item

  • Fourth item

  • First item
  • Second item
  • Third item
  • Fourth item
+ First item
+ Second item
+ Third item
+ Fourth item

  • First item

  • Second item

  • Third item

  • Fourth item

  • First item
  • Second item
  • Third item
  • Fourth item
- First item
- Second item
- Third item
    - Indented item
    - Indented item
- Fourth item

  • First item

  • Second item

  • Third item

    • Indented item

    • Indented item



  • Fourth item

  • First item
  • Second item
  • Third item
    • Indented item
    • Indented item
  • Fourth item

无序列表最佳实践

Markdown applications don’t agree on how to handle different delimiters in the same list. For compatibility, don't mix and match delimiters in the same list — pick one and stick with it.


✅  Do this❌  Don't do this
- First item
- Second item
- Third item
- Fourth item
+ First item
* Second item
- Third item
+ Fourth item

在列表中嵌套其他元素

要在保留列表连续性的同时在列表中添加另一种元素,请将该元素缩进四个空格或一个制表符,如下例所示:

#段落


* This is the first list item.
* Here's the second list item.I need to add another paragraph below the second list item.* And here's the third list item.

渲染效果如下:


  • This is the first list item.

  • Here's the second list item.

    I need to add another paragraph below the second list item.

  • And here's the third list item.


引用块


* This is the first list item.
* Here's the second list item.> A blockquote would look great below the second list item.* And here's the third list item.

渲染效果如下:


  • This is the first list item.

  • Here's the second list item.

    A blockquote would look great below the second list item.

  • And here's the third list item.


代码块

代码块通常采用四个空格或一个制表符缩进。当它们被放在列表中时,请将它们缩进八个空格或两个制表符。


1. Open the file.
2. Find the following code block on line 21:3. Update the title to match the name of your website.

渲染效果如下:


  1. Open the file.

  2. Find the following code block on line 21:


  3. Update the title to match the name of your website.


图片


1. Open the file containing the Linux mascot.
2. Marvel at its beauty.![Tux, the Linux mascot](/assets/images/tux.png)3. Close the file.

渲染效果如下:


  1. Open the file containing the Linux mascot.

  2. Marvel at its beauty.

  3. Close the file.

列表

You can nest an unordered list in an ordered list, or vice versa.


1. First item
2. Second item
3. Third item- Indented item- Indented item
4. Fourth item

渲染效果如下:


  1. First item
  2. Second item
  3. Third item
    • Indented item
    • Indented item
  4. Fourth item

 


Markdown 分隔线语法

要创建分隔线,请在单独一行上使用三个或多个星号 (***)、破折号 (---) 或下划线 (___) ,并且不能包含其他内容。


***---_________________

以上三个分隔线的渲染效果看起来都一样:




分隔线(Horizontal Rule)用法最佳实践

为了兼容性,请在分隔线的前后均添加空白行。


✅  Do this❌  Don't do this
Try to put a blank line before...

---

...and after a horizontal rule.
Without blank lines, this would be a heading.
---
Don't do this!

Markdown 转义字符语法

要显示原本用于格式化 Markdown 文档的字符,请在字符前面添加反斜杠字符 () 。


\* Without the backslash, this would be a bullet in an unordered list.

渲染效果如下:

* Without the backslash, this would be a bullet in an unordered list.


可做转义的字符

以下列出的字符都可以通过使用反斜杠字符从而达到转义目的。


CharacterName
\backslash
`backtick (see also escaping backticks in code)
*asterisk
_underscore
{ }curly braces
[ ]brackets
( )parentheses
#pound sign
+plus sign
-minus sign (hyphen)
.dot
!exclamation mark
|pipe (see also escaping pipe in tables)

特殊字符自动转义

在 HTML 文件中&#xff0c;有两个字符需要特殊处理&#xff1a; < 和 & 。 < 符号用于起始标签&#xff0c;& 符号则用于标记 HTML 实体&#xff0c;如果你只是想要使用这些符号&#xff0c;你必须要使用实体的形式&#xff0c;像是 < 和 &

& 符号其实很容易让写作网页文件的人感到困扰&#xff0c;如果你要打「AT&T」 &#xff0c;你必须要写成「AT&T」 &#xff0c;还得转换网址内的 & 符号&#xff0c;如果你要链接到&#xff1a;


http://images.google.com/images?num&#61;30&q&#61;larry&#43;bird

你必须要把网址转成&#xff1a;


http://images.google.com/images?num&#61;30&q&#61;larry&#43;bird

才能放到链接标签的 href 属性里。不用说也知道这很容易忘记&#xff0c;这也可能是 HTML 标准检查所检查到的错误中&#xff0c;数量最多的。

Markdown 允许你直接使用这些符号&#xff0c;它帮你自动转义字符。如果你使用 & 符号的作为 HTML 实体的一部分&#xff0c;那么它不会被转换&#xff0c;而在其它情况下&#xff0c;它则会被转换成 &。所以你如果要在文件中插入一个著作权的符号&#xff0c;你可以这样写&#xff1a;


©

Markdown 将不会对这段文字做修改&#xff0c;但是如果你这样写&#xff1a;


AT&T

Markdown 就会将它转为&#xff1a;


AT&T

类似的状况也会发生在 < 符号上&#xff0c;因为 Markdown 支持 行内 HTML &#xff0c;如果你使用 < 符号作为 HTML 标签的分隔符&#xff0c;那 Markdown 也不会对它做任何转换&#xff0c;但是如果你是写&#xff1a;


4 <5

Markdown 将会把它转换为&#xff1a;


4 <5

需要特别注意的是&#xff0c;在 Markdown 的块级元素和内联元素中&#xff0c; < 和 & 两个符号都会被自动转换成 HTML 实体&#xff0c;这项特性让你可以很容易地用 Markdown 写 HTML。&#xff08;在 HTML 语法中&#xff0c;你要手动把所有的 < 和 & 都转换为 HTML 实体。&#xff09;


推荐阅读
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • C++ 异步编程中获取线程执行结果的方法与技巧及其在前端开发中的应用探讨
    本文探讨了C++异步编程中获取线程执行结果的方法与技巧,并深入分析了这些技术在前端开发中的应用。通过对比不同的异步编程模型,本文详细介绍了如何高效地处理多线程任务,确保程序的稳定性和性能。同时,文章还结合实际案例,展示了这些方法在前端异步编程中的具体实现和优化策略。 ... [详细]
  • 在Android平台中,播放音频的采样率通常固定为44.1kHz,而录音的采样率则固定为8kHz。为了确保音频设备的正常工作,底层驱动必须预先设定这些固定的采样率。当上层应用提供的采样率与这些预设值不匹配时,需要通过重采样(resample)技术来调整采样率,以保证音频数据的正确处理和传输。本文将详细探讨FFMpeg在音频处理中的基础理论及重采样技术的应用。 ... [详细]
  • 利用爬虫技术抓取数据,结合Fiddler与Postman在Chrome中的应用优化提交流程
    本文探讨了如何利用爬虫技术抓取目标网站的数据,并结合Fiddler和Postman工具在Chrome浏览器中的应用,优化数据提交流程。通过详细的抓包分析和模拟提交,有效提升了数据抓取的效率和准确性。此外,文章还介绍了如何使用这些工具进行调试和优化,为开发者提供了实用的操作指南。 ... [详细]
  • 使用Maven JAR插件将单个或多个文件及其依赖项合并为一个可引用的JAR包
    本文介绍了如何利用Maven中的maven-assembly-plugin插件将单个或多个Java文件及其依赖项打包成一个可引用的JAR文件。首先,需要创建一个新的Maven项目,并将待打包的Java文件复制到该项目中。通过配置maven-assembly-plugin,可以实现将所有文件及其依赖项合并为一个独立的JAR包,方便在其他项目中引用和使用。此外,该方法还支持自定义装配描述符,以满足不同场景下的需求。 ... [详细]
  • 技术日志:使用 Ruby 爬虫抓取拉勾网职位数据并生成词云分析报告
    技术日志:使用 Ruby 爬虫抓取拉勾网职位数据并生成词云分析报告 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 本文详细解析了 Android 系统启动过程中的核心文件 `init.c`,探讨了其在系统初始化阶段的关键作用。通过对 `init.c` 的源代码进行深入分析,揭示了其如何管理进程、解析配置文件以及执行系统启动脚本。此外,文章还介绍了 `init` 进程的生命周期及其与内核的交互方式,为开发者提供了深入了解 Android 启动机制的宝贵资料。 ... [详细]
  • 在《ChartData类详解》一文中,我们将深入探讨 MPAndroidChart 中的 ChartData 类。本文将详细介绍如何设置图表颜色(Setting Colors)以及如何格式化数据值(Formatting Data Values),通过 ValueFormatter 的使用来提升图表的可读性和美观度。此外,我们还将介绍一些高级配置选项,帮助开发者更好地定制和优化图表展示效果。 ... [详细]
  • 深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案
    深入剖析Java中SimpleDateFormat在多线程环境下的潜在风险与解决方案 ... [详细]
  • 本文详细介绍了批处理技术的基本概念及其在实际应用中的重要性。首先,对简单的批处理内部命令进行了概述,重点讲解了Echo命令的功能,包括如何打开或关闭回显功能以及显示消息。如果没有指定任何参数,Echo命令会显示当前的回显设置。此外,文章还探讨了批处理技术在自动化任务执行、系统管理等领域的广泛应用,为读者提供了丰富的实践案例和技术指导。 ... [详细]
  • 本指南介绍了 `requests` 库的基本使用方法,详细解释了其七个主要函数。其中,`requests.request()` 是构建请求的基础方法,支持其他高级功能的实现。此外,我们还重点介绍了如何使用 `requests.get()` 方法来获取 HTML 网页内容,这是进行网页数据抓取和解析的重要步骤。通过这些基础方法,读者可以轻松上手并掌握网页数据抓取的核心技巧。 ... [详细]
  • 在关系型数据库中,数据约束是指在向数据表中插入数据时必须遵循的限制条件。在MySQL和MariaDB中,常见的数据约束包括主键约束、唯一键约束、外键约束以及非空约束等。这些约束确保了数据的完整性和一致性,是数据库管理中的重要组成部分。通过合理设置和使用这些约束,可以有效防止数据冗余和错误,提升数据库的可靠性和性能。 ... [详细]
  • 在 Vue 应用开发中,页面状态管理和跨页面数据传递是常见需求。本文将详细介绍 Vue Router 提供的两种有效方式,帮助开发者高效地实现页面间的数据交互与状态同步,同时分享一些最佳实践和注意事项。 ... [详细]
  • 单链表的高效遍历及性能优化策略
    本文探讨了单链表的高效遍历方法及其性能优化策略。在单链表的数据结构中,插入操作的时间复杂度为O(n),而遍历操作的时间复杂度为O(n^2)。通过在 `LinkList.h` 和 `main.cpp` 文件中对单链表进行封装,我们实现了创建和销毁功能的优化,提高了单链表的使用效率。此外,文章还介绍了几种常见的优化技术,如缓存节点指针和批量处理,以进一步提升遍历性能。 ... [详细]
author-avatar
迷人的哈喽柯柯_458
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有