MDUtil

Markdown 删除线

在文字两侧各加两个波浪号就是删除线:~~删除~~。删除线属于 GitHub 风格 Markdown(GFM)的扩展语法,本文也介绍只支持 CommonMark 时该怎么写。

简短回答

Markdown 怎么加删除线?

在文字两侧各加两个波浪号:~~删除的文字~~,生成 HTML 的 <del> 元素。删除线来自 GitHub 风格 Markdown,GitHub、GitLab、Discord、Obsidian 和大多数编辑器都支持;只遵循 CommonMark 的渲染器需要改用 <del> 标签。

Markdown
~~这段文字有删除线~~

显示效果

这段文字有删除线

删除线的写法和示例

推荐用两个波浪号。下面的示例介绍几种变化写法,以及删除线常见的用处,例如标出原价和已完成的事项。

两个波浪号

GitHub 风格 Markdown 的标准写法。波浪号要紧贴文字,和加粗的星号一样。

Markdown
会议从~~周一~~改到周二。

显示效果

会议从周一改到周二。

一个波浪号

GitHub 等很多渲染器也接受两侧各一个波浪号,但 Discord 不支持,用两个更稳妥。

Markdown
~两侧各一个波浪号~

显示效果

两侧各一个波浪号

HTML 标签

不支持波浪号的地方,可以用 <del> 表示删除的内容,用 <s> 表示不再准确的内容,两者都显示为删除线。

Markdown
<del>第 2 版已删除</del>

<s>全场包邮</s>

显示效果

第 2 版已删除

全场包邮

与加粗、斜体、链接组合

删除线可以包住其他格式,也可以放在其他格式里面。

Markdown
~~**严重错误**~~ 已在 1.4 版修复

**价格:~~99 元~~ 79 元**

~~[旧版指南](https://example.com/v1)~~

显示效果

严重错误 已在 1.4 版修复

价格:99 元 79 元

旧版指南

任务列表和表格

划掉已完成的事项和原价是常见用法。

Markdown
- [x] ~~写初稿~~
- [ ] 审阅初稿

| 套餐 | 价格 |
| --- | --- |
| 专业版 | ~~99 元~~ 79 元 |

显示效果

  • 写初稿
  • 审阅初稿
套餐价格
专业版99 元 79 元

显示波浪号本身

在每个波浪号前加反斜杠就会原样显示,放进反引号也可以。

Markdown
\~\~这里没有删除线\~\~

`~~这是代码~~`

显示效果

~~这里没有删除线~~

~~这是代码~~

各平台的删除线支持

遵循 GitHub 风格 Markdown 的应用都支持两个波浪号,聊天软件在波浪号的个数上有差异。

应用支持情况说明
GitHub / GitLab支持文件、Issue、PR 和评论中都能用 ~~文字~~,GitHub 也接受 ~文字~。
Discord支持~~文字~~ 有效,一个波浪号会原样显示。
Slack有差异Slack 消息用一个波浪号:~文字~。
Obsidian支持~~文字~~ 在编辑和阅读视图中都有效。
Notion支持输入 ~文字~ 会立即加上删除线。
只支持 CommonMark 的渲染器不支持没有删除线语法,改写成 <del>文字</del>。

常见问题

Markdown 里的 ~~ 是什么意思?

文字两侧各加两个波浪号表示删除线:~~文字~~ 显示为带横线的文字,HTML 结果是表示删除内容的 <del>。

删除线属于标准 Markdown 吗?

原始的 Markdown 和 CommonMark 都没有删除线,它来自 GitHub 风格 Markdown,现在大多数应用都支持。不支持的地方写 <del>文字</del>。

为什么删除线不生效?

检查波浪号是否紧贴文字(~~ 文字 ~~ 无效)、两侧是否都有,以及应用是否支持 GitHub 风格 Markdown。~~ 的内侧是标点、外侧紧挨文字时也会失效,例如 ~~“旧版”~~说明。Discord 需要两个波浪号,Slack 只用一个。

GitHub 上怎么加删除线?

用两个波浪号:~~文字~~,README、Issue、Pull Request、评论和 Wiki 都支持。

Discord 和 Slack 里怎么加删除线?

Discord 用两个波浪号 ~~文字~~,Slack 用一个波浪号 ~文字~。

删除线可以跨行吗?

同一段落内可以,开头和结尾的波浪号可以在不同的行。删除线不能跨过空行,每个段落或列表项要各自加。

<del> 和 <s> 有什么区别?

<del> 表示从文档中删除的内容,常与表示新增内容的 <ins> 搭配;<s> 表示不再准确的内容,例如原价。两者显示效果相同。

怎样显示波浪号本身?

在每个波浪号前加反斜杠,例如 \~\~文字\~\~,或者把文字放进反引号。