Markdown 分隔线怎么画?
以及为什么你的 --- 变成了大标题
Markdown 里的分隔线(横跨页面的那条线)就是三个以上的短横、星号或下划线,单独放一行:---、*** 或 ___。规则就这么简单。
麻烦在于 --- 有第二个身份。把它紧贴一行文字的下方,Markdown 会把那行文字变成标题、而不是画一条线。同样三个字符、两种完全不同的结果,这就是让人栽跟头的地方。
本页讲的是水平分隔线和那个变标题的坑。如果你的问题是段落里另起一行却不换行,那是另一回事,看 Markdown 换行为什么不生效。
怎么画一条分隔线
- 三个以上相同的字符,单独占一行:
---、***或___。 - 它的上方和下方各留一个空行。
- 三种渲染出同样的横线,输出上没有任何区别。
如果这些符号你还不太熟,Markdown 怎么写 讲了基础。
为什么你的 --- 变成了标题(Setext 坑)
Markdown 有两种标题写法。一种在前面加 #。另一种叫 Setext 标题,用 =(一级标题)或 -(二级标题)给文字加下划线。所以这个:
这里是一些文字。
--- 不是"一行文字 + 一条分隔线",Markdown 把它读成一个整体:文字 这里是一些文字。 是标题,下面的短横是它的下划线。修法很简单——中间用一个空行隔开。
症状与修法
| 你看到的 | 为什么 | 怎么修 |
|---|---|---|
| 你的 --- 显示成一条横跨页面的线 | 它上下都有空行 | 没问题,这就是对的 |
| --- 上面的文字变成了大标题 | --- 紧贴文字下方,被当成 Setext 标题的下划线 | 在文字和 --- 之间加一个空行 |
| 想要分隔线但什么都没渲染出来 | 缺空行,或不足三个字符 | 用三个以上、单独一行、前后留空行 |
放一起看,正确的分隔线和那个坑长这样:
正确的分隔线(上下都有空行):
这里是一些文字。
---
更多文字。
坑(--- 紧贴文字下方 → 变标题):
这里是一些文字。
--- 两个小习惯就能绕开整个问题:永远在 --- 上方留一个空行,或者分隔线一律用 ***——因为只有 --- 会兼作标题下划线。
在 NoteLoom 里看它当场渲染
最快抓住这个坑的办法,就是看它渲染。NoteLoom 是个在浏览器里读写本地 .md 文件的编辑器:在 source 视图里打你的 ---,live 和 reading 视图立刻显示结果,你就能看出它成了分隔线还是标题、当场把空行调好。
NoteLoom 遵循 CommonMark,所以你看到的和多数 Markdown 工具的行为一致。先说清边界:它没有任何 AI,只是把你本地的 Markdown 渲染出来、存回去。
用起来:用 Chrome / Edge / Arc 打开 app.noteloom.cc,挂载一个本地文件夹,在 source 视图里写、看 live 视图渲染出的页面。直接存回本地,不上云、不用账号。
FAQ
Markdown 分隔线怎么画?
为什么我的 --- 变成了标题、而不是横线?
---、***、___ 有什么区别?
分隔线前后一定要留空行吗?
分隔线和换行是一回事吗?
能在 NoteLoom 里检查吗?
一秒看你的 --- 渲染成什么
用 Chrome / Edge / Arc 打开 NoteLoom,挂载一个本地文件夹,在 source 视图里打 ---、看 live 视图里它画出的是分隔线还是标题。直接存回本地,不用装软件,也不用注册账号。