物理 markdown语法
Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML代码。
基础语法
- 标题:
#
表示一级标题,##
表示二级标题,以此类推,最多到六级标题。
- 段落与换行:
- 直接编写文字形成段落。
- 如果需要换行,则需要在行尾加上两个空格然后回车。
- 强调:
*斜体*
或_斜体_
表示斜体。**粗体**
或__粗体__
表示粗体。~~删除线~~
表示删除线。
- 列表:
-
或*
开头表示无序列表。1. 2. 3.
等数字加点表示有序列表。- 子列表使用四个空格缩进。
- 链接与图片:
[显示文本](链接地址)
创建链接。![替代文本](图片地址)
插入图片。
- 引用:
>
表示引用,可以嵌套使用。
- 代码:
- 单行代码使用一对反引号
`
包围。 - 多行代码块使用三个反引号
`
包围,并可选指定语言。
- 单行代码使用一对反引号
- 表格:
- 使用
|
分隔列,-
分隔表头和表行。
- 使用
扩展语法
- 任务列表:
- [ ]
表示未完成的任务,- [x]
表示完成的任务。
- 锚点:
[文本](#锚点名)
创建锚点链接。
- 代码块高亮:
- 在多行代码块语法后添加语言标识,如
`
python。
- 在多行代码块语法后添加语言标识,如
- HTML代码:
- Markdown 支持直接嵌入HTML代码。
- 脚注:
[^1]
创建脚注,在文档末尾定义[^1]: 脚注内容
。##
特殊用法
- 自动链接:
- 使用尖括号包围网址或邮箱地址
<[[http://example.com](http://example.com)]([http://example.com](http://example.com))>
自动转换为链接。
- 使用尖括号包围网址或邮箱地址
- 图片大小与对齐:
- 通过HTML的
<img>
标签调整图片大小和对齐。
- 通过HTML的
- 自定义ID:
- 在标题后添加
{#custom-id}
来自定义锚点ID。
- 在标题后添加
- 转义字符:
- 转义特殊字符,如
*
显示为*
而不是斜体。
- 转义特殊字符,如
- 特殊字符自动转换:
- 如在列表前加四个空格以避免被当作列表项。
过时的用法
- 水平线:
---
或***
表示水平线,但建议使用HTML的<hr>
标签。
- 内联HTML样式:
- 直接在HTML标签中使用
style
属性定义样式,这不符合内容与样式分离的原则。
- 直接在HTML标签中使用
- 过时的Markdown方言:
- 某些Markdown处理器有自己特定的扩展语法,不一定被其它处理器支持。
注:不同的Markdown解析器(如GitHub Flavored Markdown, CommonMark等)可能在语法上有所差异。以上的用法是基于较为通用的Markdown语法。
新语法
(那些不常用,但可能在特定情况下非常有用的Markdown功能。)
- 锚点(Anchors):
- 你可以通过在标题后添加
{#section-id}
来自定义锚点,然后在文档中创建指向该锚点的链接,例如[Jump to Heading](#section-id)
。
- 你可以通过在标题后添加
- 转义字符(Escape Characters):
- 如果你想显示Markdown中的特殊字符(如
*
,_
,#
等),可以在它们前面加上反斜杠 来转义,例如*this text is not italic*
。
- 如果你想显示Markdown中的特殊字符(如
- 自动链接(Automatic Links):
- 你可以使用尖括号
<
>
来自动将URL或电子邮件地址转换为链接,例如<[[https://www.example.com](https://www.example.com)]([https://www.example.com](https://www.example.com))>
会自动转换为链接。
- 你可以使用尖括号
- 图片大小和居中(Image Size and Alignment):
- 虽然Markdown本身不支持调整图片大小或居中,但你可以使用HTML来实现这一点,例如
<img src="image.jpg" style="width:50%;" align="center">
。
- 虽然Markdown本身不支持调整图片大小或居中,但你可以使用HTML来实现这一点,例如
- 删除线和下划线(Strikethrough and Underline):
- 删除线可以通过
~~text~~
实现,而下划线可以通过HTML的<u>text</u>
实现。
- 删除线可以通过
- 注释(Comments):
- Markdown本身不支持注释,但你可以使用HTML的注释标签
<!-- your comment here -->
。
- Markdown本身不支持注释,但你可以使用HTML的注释标签
- 嵌入HTML和CSS(Embedding HTML and CSS):
- Markdown支持在文档中直接嵌入HTML标签和CSS样式。例如,你可以使用
<style>your css here</style>
来添加自定义样式。
- Markdown支持在文档中直接嵌入HTML标签和CSS样式。例如,你可以使用
- 高亮文本(Highlighting Text):
- 你可以使用HTML的
<mark>
标签来高亮文本,例如<mark>高亮文本</mark>
。
- 你可以使用HTML的
- 自定义ID和类(Custom IDs and Classes):
- 你可以给标题或其他元素添加自定义ID和类,这在生成目录或应用自定义样式时非常有用。例如,
### My Header {#custom-id .custom-class}
。
- 你可以给标题或其他元素添加自定义ID和类,这在生成目录或应用自定义样式时非常有用。例如,
定义列表(Definition Lists):
虽然不是标准的Markdown语法,但一些Markdown解析器支持定义列表,它们看起来是这样的:
Term 1: Definition 1Term 2: Definition 2
注:一些特殊用法可能在不同的Markdown中不被支持或表现不同,比如电脑端与平板端,平板端有的地方就是显示不出来,没办法。
用markdown进行嵌套
嵌套列表:你可以在一个列表中嵌套另一个列表,如下所示:
- 第一项 - 子列表第一项 - 子列表第二项- 第二项
嵌套引用:引用块内可以嵌套另一个引用块:
> 第一层引用>> > 第二层引用>> 回到第一层
嵌套代码块:在一个代码块中嵌套另一个代码块需要使用更多的反引号:
```markdown```pythonprint("Hello, World!")
嵌套标题和内容:你可以在一个标题下嵌套多个段落、列表、代码块等:
# 一级标题这是第一段内容。## 二级标题- 列表项- 另一个列表项```pythonprint("这是代码块")
嵌套任务列表:在任务列表中嵌套其他列表项或任务项:
- [x] 完成的任务 - [ ] 子任务 - [x] 另一个完成的子任务- [ ] 未完成的任务
嵌套表格:虽然表格本身不支持嵌套,但你可以通过在单元格中添加其他Markdown元素(如链接、图片、强调等)来实现类似的效果:
| 嵌套内容 | 嵌套内容 || -------- | -------- || ![图片](image.jpg) | **粗体文本** || [链接](http://example.com) | *斜体文本* |
请注意,Markdown的嵌套能力是有限的,并不是所有的元素都可以嵌套。例如,你通常不能在一个标题内嵌套另一个标题,也不能在一个链接或图片标签内嵌套其他Markdown元素。但是,我并不建议过度嵌套,因为这样可能会导致文档难以进行后期的更新、维护。
颜色
在Markdown中设置文本颜色的方法主要是通过内嵌HTML标签来实现的。具体的颜色表示方法有三种,分别是颜色名称、RGB值和十六进制代码。
设置方法及颜色表示:
颜色名称:Markdown支持使用HTML颜色名称直接设置文本颜色,例如
<font color="red">text</font>
会使文本显示为红色。RGB值:使用RGB色值也是另一种常见的方法,格式为
<font color="rgb(255,0,0)">text</font>
,其中RGB值以逗号分隔。十六进制代码:此外,还可以使用十六进制颜色代码设置文本颜色,例如
<font color="#FF0000">text</font>
同样会使文本显示为红色。
字体
markdown 中表示字体的方式主要是通过 HTML 的 <font>
标签,尽管这并非 Markdown 的标准语法,但大多数 Markdown 解析器都能识别并正确显示。
可用的字体表示方法:
直接指定字体名称:在
<font>
标签中使用face
属性来指定字体名称。例如,<font face="宋体">文本</font>
会将“文本”显示为宋体字体。使用CSS样式表:更常见的做法是在 HTML 文档的
<head>
部分定义 CSS 样式,然后在 Markdown 文档中通过<span>
或<div>
等标签引用这些样式。例如,在<head>
中定义<style>.arial { font-family: Arial; }</style>
,然后在 Markdown 文档中使用<span class="arial">文本</span>
来应用 Arial 字体。直接内嵌CSS样式:也可以直接在标签内使用
style
属性来定义字体,如<span style="font-family:'Times New Roman';">文本</span>
。
最常用:$文本$
(表示为:$wenben1文本一$)
注意事项:
- 需要注意的是,Markdown 的设计初衷是为了简化文本的格式与结构,因此原生的 Markdown 语法并不直接支持复杂的文本样式设置,比如字体的选择。
- 在标准的 Markdown 语法中,并没有直接改变字体的方式。上述提到的使用 HTML 标签的方法虽然可行,但可能会影响到文档的可移植性和兼容性,因为并非所有的 Markdown 解析器都支持或兼容这种方式。
- 在实际应用中,如果需要对文本样式进行精细的控制,建议使用 HTML 或 LaTeX 等标记语言(虽然有亿点点难),或者将 Markdown 文档转换为其他格式(如 PDF 或 DOCX)后,通过相应的处理软件进行编辑和排版。
在 Markdown 中直接设置字体有一定的局限性,并且通常需要借助 HTML 标签或 CSS 样式来实现。
打字不易,赞留下!有问题留言。