简书 Markdown 语法详解

2023-12-01 21:32
文章标签 详解 语法 markdown 简书

本文主要是介绍简书 Markdown 语法详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

注: 文章摘自 白老师课堂 - 简书

一、区块标记

区块标记:是指内容独占一块,需前后换行,不和其他标记共处一行的标记

1. 段落

段落:即是一段连续的文字,可包含 * 、空格、换行、tab 等字符。两个段落之间使用空行分隔

示例代码

第一自然段第二自然段

效果

第一自然段

第二自然段

注意:换行不是分段的标识,空行才是

2. 标题

标题:代表了文章中主题的层次,比如:文章标题使用一级标题,回目名称使用二级标题,小节使用三级标题,依次类推。主题的层次代表了文章的大纲

语法:Markdown 中使用连续 n(1-6) 个 "#" 分别表示第 n 级标题, "#" 和后续内容之间应放置一个空格

示例代码

# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

效果

一级标题

二级标题

三级标题

四级标题
五级标题
六级标题
3. 列表

列表:就是一组相关信息的集合

  • 有序列表

语法:使用 "(数字)" 和 "." 作为项目符号,项目符号和正式列表项目之间有一个空格

示例代码

1. 步骤一
2. 步骤二
3. 步骤三

效果

  1. 步骤一
  2. 步骤二
  3. 步骤三
  • 无序列表*

语法:使用 "+" 作为项目符号,项目符号和正式列表项目之间有一个空格

示例代码

+ 一级目录+ 二级目录+ 三级目录+ 四级目录
+ 一级目录+ 二级目录+ 二级目录+ 三级目录

效果

  • 一级目录

    • 二级目录
      • 三级目录
        • 四级目录
  • 一级目录

    • 二级目录
    • 二级目录
      • 三级目录

注意

  • 无序列表的符号可使用 *,+,- 效果是相同的
  • 每一层级目录 (第一层级除外) 前面应相对于上一层级添加一个 tab 或两个空格, 以便区分等级
4. 分割线

语法:至少使用 3 个连续的 * 即可得到一个分割线

示例代码

***

效果


5. 引用

语法:在行头加上 ">" 即可, ">" 和后续内容之间有一个空格

示例代码

> 引用

效果

引用

注意

  • 可以在每行之前加 ">" ,也可以在段落之前加 1 个 ">"
  • 引用内部可以使用其他 Markdown 标记

二、行内标记

行内标记和其他标记共处一行

1. 强调文字
  • 斜体

语法:内容前后各1个 "*"或"_"

示例代码

*斜体*
_斜体_

效果

斜体
斜体

  • 粗体

语法:内容前后各2个 "*"或"_"

示例代码

**粗体**
__粗体__

效果

粗体
粗体

  • 删除文字

语法:内容前后各2个 "~"

示例代码

~~删除~~

效果

删除

  • 粗斜体

语法:内容前后各2个 "" 和1个"_" 或 1个 ""和2个"_" (左右要对称)

示例代码

_**粗斜体**_
*__粗斜体__*
**_粗斜体_**
__*粗斜体*__

效果

粗斜体
粗斜体
粗斜体
粗斜体

2. 图片
  • 行内图片

图片和图片地址写在一起

语法: [图片上传失败...(image-b2fafa-1534418374184)]

示例代码

![简书 LOGO](https://upload-images.jianshu.io/upload_images/4804567-a1a23be9218ff8c4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

效果

4804567-a1a23be9218ff8c4.png
简书 LOGO

注意

  • 在简书中,图片可以直接拖到编辑区,会自动上传图片并生成图片地址; 也可以右键 (Ctrl + V) 直接粘贴
  • "[]" 方括号里的内容可以不写
  • 引用图片

图片和图片地址分开书写

语法:
![图片标题][图片 id]
(空行)
[图片 id]:图片 url

![简书 LOGO][jianshu][jianshu]:https://upload-images.jianshu.io/upload_images/4804567-a1a23be9218ff8c4.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240

效果

4804567-a1a23be9218ff8c4.png
简书 LOGO

注意

  • 引用图片的 id 在文章中必须唯一
  • 名称和路径之间至少空一行
  • 图片名称 (第一对"[]"内容) 可以不写
  • 链接 id 可使用字母、数字、空格和下划线等,不区分大小写
3. 链接
  • 行内链接

链接和地址写在一起

语法:[链接名称](链接地址 url "链接title")

示例代码

[小贤笔记](https://www.jianshu.com/u/195a91a868f5)

效果

小贤笔记

  • 引用链接

链接和地址分开书写

语法:
[链接名称][链接id]
(空行)
[链接id]:链接 url 地址 "链接 title"

示例代码

[小贤笔记][xxbj][xxbj](https://www.jianshu.com/u/195a91a868f5)

效果

小贤笔记

注意

  • 链接 id 可使用字母、数字、空格和下划线等,不区分大小写
  • 名称和路径之间至少空一行
  • 自动链接

一种简明的链接书写方式

语法:<链接地址>

示例代码

<https://www.jianshu.com/u/195a91a868f5>

效果

https://www.jianshu.com/u/195a91a868f5

4. 脚注

为名词提供注释,注释将显示在文章末尾

语法:
待解释文字[^脚注 id]
[^脚注 id]:注释内容

示例代码

Hello World[^hello]
[^hello]:你好, 世界

效果

Hello World[1]
(第二行的内容在文章最底部)

注意事项

  • 脚注 id 必须唯一
  • 无论脚注 id 如何起名,显示时一律标为数字,并且按出现顺序排列
  • 翻译的内容会自动跳到文章末尾

三、代码块

行内代码块

语法:使用两个 "`"(esc 下面的那个键) 将代码包含起来

示例代码

`Hello World`

效果

Hello World

多行代码块

语法:只需要每行都缩进 4 个空格即可,或者使用```框起来

  • 方法1: 每前面增加两个 tab 或 4个空格

示例代码

    function() {alert("Hello, world")}

效果

    function() {alert("Hello, world")}
  • 方法2: 代码上下用 ```(esc 下面的键) 框起来

示例代码

... // ← esc 下面的键, 由于显示问题, 这里用 "." 代替
function() {alert("Hello, world")
}
... // ← esc 下面的键, 由于显示问题, 这里用 "." 代替

注意

  • 在代码区块内部,Markdown 标记失效,比如:+ 就是 + ,不被解释为特殊标记

四、表格

语法:

  • 第一行为表头,第二行分隔表头和主体部分,第三行开始每一行为一个表格行
  • 列于列之间用管道符 "|" 隔开, 表格每一行两边的管道符可省略
  • 第二行还可以为不同的列指定对齐方向, 默认为左对齐;在 "-" 左边加上 ":" 就是左对齐;在 "-" 右边加上 ":" 就是右对齐;在 "-" 两边都加上 ":" 就是居中对齐

示例代码

|姓名|年龄|性别|身高(cm)|
|-|:-|:-:|-:|
|张三|22|男|180|
|李四|18|女|165|

效果

姓名年龄性别身高(cm)
张三22180
李四18165

五、其他问题

1. Markdown 与 HTML 的关系
  • HTML 是一种发布的格式,Markdown 是一种书写的格式
  • Markdown 的格式语法只涵盖纯文本可以涵盖的范围
  • 在 Markdown 中可直接使用 HTML 标签,但需要注意
    • 对于 HTML 区块元素――如 div、table、pre、p 等标签,必须在前后加上空行与其它内容区隔开,还要求它们的开始标签与结尾标签不能用制表符(tab)或空格来缩进
    • HTML 的行内标签——如 span、cite、del 可以在 Markdown 的段落、列表或是标题里随意使用
    • 在 HTML 的区块标签中的 Markdown 标签是没有效果的
2. 特殊字符的自动转换
  • 在 HTML 文件中,有两个字符需要特殊处理: < 和 &,必须使用转义字符:& lt ; 和 & amp
  • Markdown 中,你可以自由的书写 < 和 &,编辑器会智能的进行判断:当这些符号用于 HTML 标签中,他们将保留原型;当他们单独使用时,将会转换为字符实体
  • 在代码块中,它们将统统被转换为字符实体,即原样显示
3. Markdown 中的转义字符

Markdown 中,如需显示有特定意义的符号,如:*,# 等,可使用 反斜杠 \ 进行转义。可对如下字符进行转义:

*
`
*
_
{}
()
#
+
-
.
!  

六、简书尚不支持的标记和不足

  • 用于生成目录索引的 [TOC]
  • 用于说明文章标签的 tags
  • 定义列表和待办事宜 Todo 列表
  • 数学公式
  • 各种图形:流程图、时序图、甘特图
  • 其他技术,如:{mermaid}
  • 区块代码中不显示行号

  1. 你好, 世界 ↩

这篇关于简书 Markdown 语法详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/442759

相关文章

Java中有什么工具可以进行代码反编译详解

《Java中有什么工具可以进行代码反编译详解》:本文主要介绍Java中有什么工具可以进行代码反编译的相关资,料,包括JD-GUI、CFR、Procyon、Fernflower、Javap、Byte... 目录1.JD-GUI2.CFR3.Procyon Decompiler4.Fernflower5.Jav

golang panic 函数用法示例详解

《golangpanic函数用法示例详解》在Go语言中,panic用于触发不可恢复的错误,终止函数执行并逐层向上触发defer,最终若未被recover捕获,程序会崩溃,recover用于在def... 目录1. panic 的作用2. 基本用法3. recover 的使用规则4. 错误处理建议5. 常见错

pycharm远程连接服务器运行pytorch的过程详解

《pycharm远程连接服务器运行pytorch的过程详解》:本文主要介绍在Linux环境下使用Anaconda管理不同版本的Python环境,并通过PyCharm远程连接服务器来运行PyTorc... 目录linux部署pytorch背景介绍Anaconda安装Linux安装pytorch虚拟环境安装cu

一文详解如何在Python中使用Requests库

《一文详解如何在Python中使用Requests库》:本文主要介绍如何在Python中使用Requests库的相关资料,Requests库是Python中常用的第三方库,用于简化HTTP请求的发... 目录前言1. 安装Requests库2. 发起GET请求3. 发送带有查询参数的GET请求4. 发起PO

Python进行PDF文件拆分的示例详解

《Python进行PDF文件拆分的示例详解》在日常生活中,我们常常会遇到大型的PDF文件,难以发送,将PDF拆分成多个小文件是一个实用的解决方案,下面我们就来看看如何使用Python实现PDF文件拆分... 目录使用工具将PDF按页数拆分将PDF的每一页拆分为单独的文件将PDF按指定页数拆分根据页码范围拆分

Java中的Cursor使用详解

《Java中的Cursor使用详解》本文介绍了Java中的Cursor接口及其在大数据集处理中的优势,包括逐行读取、分页处理、流控制、动态改变查询、并发控制和减少网络流量等,感兴趣的朋友一起看看吧... 最近看代码,有一段代码涉及到Cursor,感觉写法挺有意思的。注意是Cursor,而不是Consumer

SpringBoot项目注入 traceId 追踪整个请求的日志链路(过程详解)

《SpringBoot项目注入traceId追踪整个请求的日志链路(过程详解)》本文介绍了如何在单体SpringBoot项目中通过手动实现过滤器或拦截器来注入traceId,以追踪整个请求的日志链... SpringBoot项目注入 traceId 来追踪整个请求的日志链路,有了 traceId, 我们在排

HTML5中下拉框<select>标签的属性和样式详解

《HTML5中下拉框<select>标签的属性和样式详解》在HTML5中,下拉框(select标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中选择值的方式,本文将深入探讨select标签的... 在html5中,下拉框(<select>标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中

Python中多线程和多进程的基本用法详解

《Python中多线程和多进程的基本用法详解》这篇文章介绍了Python中多线程和多进程的相关知识,包括并发编程的优势,多线程和多进程的概念、适用场景、示例代码,线程池和进程池的使用,以及如何选择合适... 目录引言一、并发编程的主要优势二、python的多线程(Threading)1. 什么是多线程?2.

Java 8 Stream filter流式过滤器详解

《Java8Streamfilter流式过滤器详解》本文介绍了Java8的StreamAPI中的filter方法,展示了如何使用lambda表达式根据条件过滤流式数据,通过实际代码示例,展示了f... 目录引言 一.Java 8 Stream 的过滤器(filter)二.Java 8 的 filter、fi