From Liuzhi_0101@qq.com
写在开头
本文为笔者自己在读Markdown官方文档和实验时的一些整理.
才疏学浅,难免有些纰漏,望读者多多批评指正
基本语法
1.标题语法
形式:#+空格+标题
注意:有几个#则为几级标题(一级标题字号最大)
2.段落语法
形式:直接用空白行对文本进行分割即可
注意:不要使用空格和制表符进行段落缩进
(自己整理此份文档时进行了段落缩进也没有什么问题,按照自己的段落格式导出)
3.换行语法
形式:1.直接换行即可2.在行末尾添加< br >(字母和符号无空格)
注意:没什么可注意的
4.强调语法
1.粗体
格式:在想要强调的词语或语句前后各加两个**(两个星号)或者__(两个下划线)
注意:考虑兼容问题最好使用两个星号
2.斜体
格式:在单词或短语的前后各添加*(一个星号)或者_(一个下划线)即可
注意:考虑兼容问题最好使用一个星号
3.粗体 + 斜体
格式:使用三个星号或者三个下划线即可
注意:同上
5.引用语法
1.创建块引用
格式:在段落前加一个>符号
输出示例:
输出之后是这个样子的,你可以看到前边多了一个|符号,字的颜色也发生了一些变化
2.多个段落块的引用
格式:在段落直接的空白行加上一个>符号即可
输出示例:
输出应该是这个样子的
我直接回车换行也达到了同样效果
注意:在引用的段落块中直接使用换行也达到了同样的效果
3.嵌套块的引用
格式:在要嵌套的段落前加>>(加>>来自官方文档我自己实验时候单个>即可)
输出示例:
我的理解应该没有错误吧
看来有问题
注意:不用加双>>单个>即可
4.含有其他元素的块引用
注意:并非所有元素都可以使用,你需要自己实验以看看那些元素有效(来自官方文档的废话 )
6. 列表语法
1.有序列表
格式:自己在标题前加上(数字和英文句点)
注意:数字不一定按照数学顺序排列但是列表应当以数字1起始
我以数字2起始有什么问题么?没有实验出来。
2.无序列表
格式:在每个列表前面添加破折号加空格- 或星号*加空格或加号加空格+。
注意:1.缩进一个或者多个列表可以创建嵌套列表2.同样的兼容问题建议使用同一种符号不要+*-(三个符号)混用
输出示例:
-
感觉是这个样子啊
- 为啥不对呢
-
我懂了需要加上空格
官方文档没有说加空格的事
3.列表中嵌套其他元素
格式:组合使用效果显著
注意:1.代码块通常采用四个空格或一个制表符进行缩进。但当位于列表中时,将他们以八个空格或者两个制表符进行缩进。
输出示例:
cout<<"哈喽沃尔德;"
(自己实验并没有感受出因为缩进有什么变化,只要将代码写在两个反引号之中即可``)
7.代码语法
格式:将代码卸载两个反引号之中即可``
注意:如果想要输出``则再嵌套一层即可(将单反引号放在双反引号之内即可)
输出示例:我真的`没有`实验出来
靠!这个也太费劲了吧。不知道是我自己电脑设置问题还是咋样,单独打出反引号很费劲的。上面这个输出示例我先打印出了6个反引号,再把想输入的内容怼进去的
8.分割线语法
格式:直接在单独一行上使用三个或者多个星号、破折号、下划线且不能包含其他内容
注意:为了兼容性请在分割线前后均添加空白行
输出示例:
写三个符号直接沾满一行
9.链接语法
1.链接
格式:对于链接的说明放在中括号内,链接放在后面的括号中,链接title可选
输出示例:
这是一个有关Markdown官方语法链接Markdown官方链接
那么是不是要问,链接title是什么?
see something else:这是一个有关Markdown官方语法链接Markdown官方链接
格式:你的废话+[你想让你的网站显示成的名字]+(网站+空格+”链接title“)
2.网址和Email地址
格式:直接将URL和Email地址放在<>内即可变为可点击的链接
3.强调链接
格式:1.在链接语法前后加两个星号即可(倾斜且加粗同理)
输出示例:https://markdown.com.cn
2.将链接表示为代码块放在两个单引号内即可
输出示例https://markdown.com.cn
注意:考虑兼容性问题,在使用此部分语法时尽量采用20%来代替空格键
10.图片语法
格式:感叹号+[代替文本](图片链接+空格”图片title“)
输出示例:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sKcCGINp-1646728910241)(C:\Users\13201\Pictures\Camera Roll\1.jpg “这是一辆帅气的车子”)]
注意:1.符号要求英文输入法下
2. 代替文本好像并不显示
3.我真是个大**,直接将图片粘贴过来也可以,为什么要费这个劲呢艹
给图片增加链接
格式:[![代替文本](图片路径)](链接网址)
11.转义字符语法
1.可做转义的字符
格式: 要显示原本用于格式化Markdown文档的字符,在字符前加反斜杠即可~~(个人理解:如果你要用Markdown语法固定的字符前边加个反斜杠就好了)~~
以下可做转义字符:
Character | Name |
---|---|
\ | 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) |
2.特殊字符自动转义
我就直接照搬官方文档了(目前感觉自己用不到,也不太能看懂主要是还没学过HTML)
在 HTML 文件中,有两个字符需要特殊处理: <
和 &
。 <
符号用于起始标签,&
符号则用于标记 HTML 实体,如果你只是想要使用这些符号,你必须要使用实体的形式,像是 <
和 &
。
&
符号其实很容易让写作网页文件的人感到困扰,如果你要打「AT&T」 ,你必须要写成「AT&T
」 ,还得转换网址内的 &
符号,如果你要链接到:
http://images.google.com/images?num=30&q=larry+bird
你必须要把网址转成:
http://images.google.com/images?num=30&q=larry+bird
才能放到链接标签的 href
属性里。不用说也知道这很容易忘记,这也可能是 HTML 标准检查所检查到的错误中,数量最多的。
Markdown 允许你直接使用这些符号,它帮你自动转义字符。如果你使用 &
符号的作为 HTML 实体的一部分,那么它不会被转换,而在其它情况下,它则会被转换成 &
。所以你如果要在文件中插入一个著作权的符号,你可以这样写:
©
Markdown 将不会对这段文字做修改,但是如果你这样写:
AT&T
Markdown 就会将它转为:
AT&T
类似的状况也会发生在 <
符号上,因为 Markdown 支持 行内 HTML ,如果你使用 <
符号作为 HTML 标签的分隔符,那 Markdown 也不会对它做任何转换,但是如果你是写:
4 < 5
Markdown 将会把它转换为:
4 < 5
需要特别注意的是,在 Markdown 的块级元素和内联元素中, <
和 &
两个符号都会被自动转换成 HTML 实体,这项特性让你可以很容易地用 Markdown 写 HTML。(在 HTML 语法中,你要手动把所有的 <
和 &
都转换为 HTML 实体。)
12.内嵌HTML标签
与上面同理
1.行级内联标签
HTML 的行级內联标签如 <span>
、<cite>
、<del>
不受限制,可以在 Markdown 的段落、列表或是标题里任意使用。依照个人习惯,甚至可以不用 Markdown 格式,而采用 HTML 标签来格式化。例如:如果比较喜欢 HTML 的 <a>
或 <img>
标签,可以直接使用这些标签,而不用 Markdown 提供的链接或是图片语法。当你需要更改元素的属性时(例如为文本指定颜色或更改图像的宽度),使用 HTML 标签更方便些。
HTML 行级內联标签和区块标签不同,在內联标签的范围内, Markdown 的语法是可以解析的。
This **word** is bold. This <em>word</em> is italic.
渲染效果如下:
This word is bold. This word is italic.
2.区块标签
区块元素──比如 <div>
、<table>
、<pre>
、<p>
等标签,必须在前后加上空行,以便于内容区分。而且这些元素的开始与结尾标签,不可以用 tab 或是空白来缩进。Markdown 会自动识别这区块元素,避免在区块标签前后加上没有必要的 <p>
标签。
例如,在 Markdown 文件里加上一段 HTML 表格:
This is a regular paragraph.
<table>
<tr>
<td>Foo</td>
</tr>
</table>
This is another regular paragraph.
请注意,Markdown 语法在 HTML 区块标签中将不会被进行处理。例如,你无法在 HTML 区块内使用 Markdown 形式的*强调*
。
3.HTML 用法最佳实践
出于安全原因,并非所有 Markdown 应用程序都支持在 Markdown 文档中添加 HTML。如有疑问,请查看相应 Markdown 应用程序的手册。某些应用程序只支持 HTML 标签的子集。
对于 HTML 的块级元素 <div>
、<table>
、<pre>
和 <p>
,请在其前后使用空行(blank lines)与其它内容进行分隔。尽量不要使用制表符(tabs)或空格(spaces)对 HTML 标签做缩进,否则将影响格式。
在 HTML 块级标签内不能使用 Markdown 语法。例如 <p>italic and **bold**</p>
将不起作用。
扩展语法
1.Markdown 表格
1.格式
使用三个或多个连字符(—)创建每列的标题,并使用管道(|)分隔每一列
输出示例:
大大怪将军 | 小小怪下士 |
---|---|
甜心超人 | 开心超人 |
注:1.当我打完两个||符号之后自动生成了表格且有类似于Excel的表格选项,点赞👍
2.单元格宽度可以变化,如下所示。呈现的输出将看起来相同。
| Syntax | Description |
| --- | ----------- |
| Header | Title |
| Paragraph | Text |
2.对齐
通过在标题行中的连字符的左侧,右侧或两侧添加冒号(:
),将列中的文本对齐到左侧,右侧或中心。
| Syntax | Description | Test Text |
| :--- | :----: | ---: |
| Header | Title | Here's this |
| Paragraph | Text | And more |
呈现的输出如下所示:
Syntax | Description | Test Text |
---|---|---|
Header | Title | Here’s this |
Paragraph | Text | And more |
3.格式化表格中的文字
注:可以在表格中设置文本格式。
可以添加链接,代码(仅反引号(```)中的单词或短语,而不是代码块)和强调。
不能添加标题,块引用,列表,水平规则,图像或HTML标签。
2.Markdown 围栏代码块
1.格式
Markdown基本语法允许您通过将行缩进四个空格或一个制表符来创建代码块。如果发现不方便,请尝试使用受保护的代码块。根据Markdown处理器或编辑器的不同,您将在代码块之前和之后的行上使用三个反引号((`````)或三个波浪号(~~~)。
```
{
cout<<"哈喽沃尔德";
}
```
呈现的输出如下所示:
{
cout<<"哈喽沃尔德";
}
2.代码高亮
格式:在编写代码的任何语言添加颜色突出显示。要添加语法突出显示,请在受防护的代码块之前的反引号旁边指定一种语言。
输出示例:
```cpp
{
cout<<"Hello World!"
}
```
{
cout<<"Hello World!"
}
3.Markdown 注脚
(没啥好翻译和解释的直接Copy)
脚注使您可以添加注释和参考,而不会使文档正文混乱。当您创建脚注时,带有脚注的上标数字会出现在您添加脚注参考的位置。读者可以单击链接以跳至页面底部的脚注内容。
要创建脚注参考,请在方括号([^1]
)内添加插入符号和标识符。标识符可以是数字或单词,但不能包含空格或制表符。标识符仅将脚注参考与脚注本身相关联-在输出中,脚注按顺序编号。
在括号内使用另一个插入符号和数字添加脚注,并用冒号和文本([^1]: My footnote.
)。您不必在文档末尾添加脚注。您可以将它们放在除列表,块引号和表之类的其他元素之外的任何位置。
Here's a simple footnote,[^1] and here's a longer one.[^bignote]
[^1]: This is the first footnote.
[^bignote]: Here's one with multiple paragraphs and code.
Indent paragraphs to include them in the footnote.
`{ my code }`
Add as many paragraphs as you like.
呈现的输出如下所示:
Here’s a simple footnote,1 and here’s a longer one.2
Indent paragraphs to include them in the footnote.
`{ my code }`
Add as many paragraphs as you like.
3.标题标号
(同上)
许多Markdown处理器支持标题的自定义ID - 一些Markdown处理器会自动添加它们。添加自定义ID允许您直接链接到标题并使用CSS对其进行修改。要添加自定义标题ID,请在与标题相同的行上用大括号括起该自定义ID。
### My Great Heading {#custom-id}
HTML看起来像这样:
<h3 id="custom-id">My Great Heading</h3>
#链接到标题ID (#headid)
通过创建带有数字符号(#
)和自定义标题ID的[标准链接]((/basic-syntax/links.html),可以链接到文件中具有自定义ID的标题。
Markdown | HTML | 预览效果 |
---|---|---|
[Heading IDs](#heading-ids) | <a href="#heading-ids">Heading IDs</a> | Heading IDs |
其他网站可以通过将自定义标题ID添加到网页的完整URL(例如[Heading IDs](https://markdown.com.cn/extended-syntax/heading-ids.html#headid)
)来链接到标题。
4.定义列表
格式:一些Markdown处理器允许您创建术语及其对应定义的定义列表。要创建定义列表,请在第一行上键入术语。在下一行,键入一个冒号,后跟一个空格和定义。
First Term
: This is the definition of the first term.
Second Term
: This is one definition of the second term.
: This is another definition of the second term.
输出示例:
First Term
This is the definition of the first term.
Second Term
This is one definition of the second term.
This is another definition of the second term.
5.删除线
(感觉这个应该卸载基础语法部分啊)
格式:在单词前后使用两个波浪号~~
输出示例:少年应当平整土地并非焦虑时光
6.Markdown 任务列表语法
格式:任务列表使您可以创建带有复选框的项目列表。在支持任务列表的Markdown应用程序中,复选框将显示在内容旁边。要创建任务列表,请在任务列表项之前添加破折号-
和方括号[ ]
,并在[ ]
前面加上空格。要选择一个复选框,请在方括号[x]
之间添加 x 。
输出示例:
- 我真的好帅啊
- 读者也帅
不给你勾选你气不气?哈哈
7.Markdown 使用Emoji 表情
(我也没想到这还能这么玩,高级👍)
有两种方法可以将表情符号添加到Markdown文件中:将表情符号复制并粘贴到Markdown格式的文本中,或者键入emoji shortcodes。
1. 复制和粘贴表情符号
在大多数情况下,您可以简单地从Emojipedia 等来源复制表情符号并将其粘贴到文档中。许多Markdown应用程序会自动以Markdown格式的文本显示表情符号。从Markdown应用程序导出的HTML和PDF文件应显示表情符号。
Tip: 如果您使用的是静态网站生成器,请确保将HTML页面编码为UTF-8。.
2.使用表情符号简码
一些Markdown应用程序允许您通过键入表情符号短代码来插入表情符号。这些以冒号开头和结尾,并包含表情符号的名称。
去露营了! :tent: 很快回来。
真好笑! :joy:
呈现的输出如下所示:
去露营了!⛺很快回来。
真好笑!😂
Note: 注意:您可以使用此表情符号简码列表,但请记住,表情符号简码因应用程序而异。有关更多信息,请参阅Markdown应用程序的文档。
8.自动网址链接
很多Markdown处理器会自动将URL转换为链接。这意味着如果您输入http://www.example.com,即使您未使用方括号,您的Markdown处理器也会自动将其转换为链接。
http://www.example.com
呈现的输出如下所示:
禁用自动URL链接
如果您不希望自动链接URL,则可以通过将URL表示为带反引号的代码来删除该链接。
`http://www.example.com`
呈现的输出如下所示:
http://www.example.com
写在最后
少年应当平整土地而非焦虑时光。
(自取即可,表明出处)