Obsidian如何设置折叠块?类似Notion那样?
- 内容介绍
- 文章标签
- 相关推荐
Obsidian 中想要实现类似 Notion 的“折叠块”(Toggle List / Toggle Block),主要有两种方式:利用原生功能(Callout) 和 利用插件(Outliner)。
1. 核心方法:使用 Callout(原生支持)
这是目前在 Obsidian 中实现“折叠块”最标准、最稳定的方法。Obsidian 并没有名为“折叠块”的独立功能,而是通过**“Callout(标注块)”**来实现的。
语法:
在引用块 > 后加上 [!NOTE],并在其后加上 - 号即可。
> [!NOTE]- 这里是标题(点击展开)
> 这里是隐藏的内容。
> 可以放文字、图片、甚至其他笔记链接。
[!NOTE]:定义块的类型(图标和颜色)。-:表示默认折叠(如果用+则默认展开)。- 注意: 这种方式默认会有一个“盒子”背景色(类似 Notion 的 Callout)。
2. 进阶美化:去除“盒子”背景(像 Notion 一样简洁)
如果你觉得原生的 Callout 那个“方框背景”太重了,想要 Notion 那种只有一行字和一个小三角的清爽效果,可以通过 CSS 或主题来实现。
方案 A:使用 Minimal 主题(推荐)
如果你安装了 Minimal Theme,它自带了一个特殊的 Callout 类型。
使用 > [!example] 或在 Minimal 设置中开启相关选项,可以让 Callout 变得非常极简,接近 Notion 的风格。
方案 B:使用 CSS 片段(自定义)
你可以添加一段 CSS 代码,把特定的 Callout 变成透明背景。
- 打开设置 -> 外观 -> CSS 代码片段 -> 打开文件夹。
- 新建一个
clean-toggle.css文件,粘贴以下代码:
/* 让类型为 clean 的 callout 变成透明背景,像 Notion Toggle 一样 */
.callout[data-callout="clean"] {
background-color: transparent;
border: none;
box-shadow: none;
padding: 0;
margin: 0;
}
.callout[data-callout="clean"] .callout-title {
background-color: transparent;
font-weight: normal;
}
.callout[data-callout="clean"] .callout-content {
border-left: 2px solid var(--interactive-accent); /* 可选:左侧加一条细线指示层级 */
margin-left: 10px;
}
- 在 Obsidian 设置中启用该片段。
- 使用方法:
> [!clean]- 点击展开内容 > 这是隐藏的内容,没有背景框,非常干净。
3. 列表折叠:使用 Outliner 插件
如果你指的“折叠块”是 Notion 中的 折叠列表(Toggle List)(即普通的圆点列表可以折叠),Obsidian 原生其实已经支持,但体验不如 Notion。
- 原生方法: 鼠标悬停在列表项的小圆点或前面的竖线上,会出现一个小箭头,点击即可折叠。
- 推荐插件:Outliner
- 这个插件能让你的列表体验极大提升,完全复刻 Notion 的手感。
- 快捷键支持: 它可以让你用快捷键折叠/展开当前列表项。
- 视觉优化: 它会强化列表的缩进线,让你更清楚当前的层级关系。
总结建议
- 如果你想要“折叠一大段内容”: 使用
> [!NOTE]- 标题语法。 - 如果你只是想“折叠列表层级”: 推荐安装 Outliner 插件,配合原生列表使用。
- 如果你想要 Notion 的视觉风格: 强烈推荐换用 Minimal 主题。
--【壹】--:
Ctrl+P和/都能调出命令,问题的核心是命令列表里面没有callout?
核心原因:中文翻译问题(最可能)
如果你的 Obsidian 界面是中文的,在 / 命令菜单里搜索英文 “Callout” 是搜不到的。
- 请尝试: 按下
/后,输入 “标注” (Callout 的中文翻译)。 - 或者: 输入 “bz” (标注的拼音首字母)。
你会发现有一个选项叫 “插入标注”,那个就是 Callout。
--【贰】--:
学到了,感谢大佬分享。
--【叁】--:
这个折叠是每行都要加 > 符号吗? 感觉有点蠢
我用的 details 加样式做的折叠…
--【肆】--:
这好用!感谢佬!
--【伍】--:
举一反三:你可以怎么改?
1. 改变颜色和图标
把 NOTE 换成其他单词,可以改变样式:
> [!TIP]- 这是一个提示(绿色)
> 适合放一些小技巧。
效果:
[!TIP]- 这是一个提示(绿色)
适合放一些小技巧。
> [!danger]- 这是一个危险警告(红色)
> 适合放非常重要的警告信息。
效果:
[!danger]- 这是一个危险警告(红色)
适合放非常重要的警告信息。
2. 默认展开,但允许折叠
把 - 换成 +:
> [!SUMMARY]+ 默认展开的摘要
> 你看,这一段默认是显示出来的,但是你可以点击标题把它收起来。
效果:
[!SUMMARY]+ 默认展开的摘要
你看,这一段默认是显示出来的,但是你可以点击标题把它收起来。
快速输入的技巧
你不需要死记硬背这个语法。在 Obsidian 中,你可以:
- 使用命令面板: 按
Ctrl + P(Mac 是Cmd + P),输入 “Callout”,选择 “Insert Callout”。 - 使用斜杠命令: 在正文中输入
/callout并回车。
这样编辑器会自动帮你生成基本结构,你只需要填内容即可。
--【陆】--: Kevins:
details
老哥你这个感觉方便不少了,css发出来抄哈作业
--【柒】--:
这个记住下,都是知识点,哈哈哈哈,之前每次要问AI
--【捌】--: 龙骧:
> [!NOTE]- 这里是标题(点击展开) > 这里是隐藏的内容。 > 可以放文字、图片、甚至其他笔记链接。
[!NOTE]- 这里是标题(点击展开)
这里是隐藏的内容。
可以放文字、图片、甚至其他笔记链接。
在OB里面note不区分大小写,写成NOTE、Note、note都是可以识别的
--【玖】--:
LinuxDO网站和Obsidian真的是无缝衔接哇!配合得非常舒适,也完全支持OB中的语法。
--【拾】--:
我个人觉得大纲非常好的方式,不知道为啥大部分笔记原生都不支持
--【拾壹】--: 龙骧:
callout
要是就是空行和缩进呀,比如一段代码配置
这种用不到的时候就该折起来不占空间
我是参考的vitepress做的
image958×1046 23.1 KB
--【拾贰】--:
感谢大佬分享,学习了,之前我对OB的开发不足1%
--【拾叁】--:
这个折叠块,感觉还是思源做的比较好,直接就可以按一级标题/二级标题等进行折叠
--【拾肆】--:
感谢分享,受用了
--【拾伍】--:
如果内容没有空行,没有缩进的话,可以不加
Obsidian 中想要实现类似 Notion 的“折叠块”(Toggle List / Toggle Block),主要有两种方式:利用原生功能(Callout) 和 利用插件(Outliner)。
1. 核心方法:使用 Callout(原生支持)
这是目前在 Obsidian 中实现“折叠块”最标准、最稳定的方法。Obsidian 并没有名为“折叠块”的独立功能,而是通过**“Callout(标注块)”**来实现的。
语法:
在引用块 > 后加上 [!NOTE],并在其后加上 - 号即可。
> [!NOTE]- 这里是标题(点击展开)
> 这里是隐藏的内容。
> 可以放文字、图片、甚至其他笔记链接。
[!NOTE]:定义块的类型(图标和颜色)。-:表示默认折叠(如果用+则默认展开)。- 注意: 这种方式默认会有一个“盒子”背景色(类似 Notion 的 Callout)。
2. 进阶美化:去除“盒子”背景(像 Notion 一样简洁)
如果你觉得原生的 Callout 那个“方框背景”太重了,想要 Notion 那种只有一行字和一个小三角的清爽效果,可以通过 CSS 或主题来实现。
方案 A:使用 Minimal 主题(推荐)
如果你安装了 Minimal Theme,它自带了一个特殊的 Callout 类型。
使用 > [!example] 或在 Minimal 设置中开启相关选项,可以让 Callout 变得非常极简,接近 Notion 的风格。
方案 B:使用 CSS 片段(自定义)
你可以添加一段 CSS 代码,把特定的 Callout 变成透明背景。
- 打开设置 -> 外观 -> CSS 代码片段 -> 打开文件夹。
- 新建一个
clean-toggle.css文件,粘贴以下代码:
/* 让类型为 clean 的 callout 变成透明背景,像 Notion Toggle 一样 */
.callout[data-callout="clean"] {
background-color: transparent;
border: none;
box-shadow: none;
padding: 0;
margin: 0;
}
.callout[data-callout="clean"] .callout-title {
background-color: transparent;
font-weight: normal;
}
.callout[data-callout="clean"] .callout-content {
border-left: 2px solid var(--interactive-accent); /* 可选:左侧加一条细线指示层级 */
margin-left: 10px;
}
- 在 Obsidian 设置中启用该片段。
- 使用方法:
> [!clean]- 点击展开内容 > 这是隐藏的内容,没有背景框,非常干净。
3. 列表折叠:使用 Outliner 插件
如果你指的“折叠块”是 Notion 中的 折叠列表(Toggle List)(即普通的圆点列表可以折叠),Obsidian 原生其实已经支持,但体验不如 Notion。
- 原生方法: 鼠标悬停在列表项的小圆点或前面的竖线上,会出现一个小箭头,点击即可折叠。
- 推荐插件:Outliner
- 这个插件能让你的列表体验极大提升,完全复刻 Notion 的手感。
- 快捷键支持: 它可以让你用快捷键折叠/展开当前列表项。
- 视觉优化: 它会强化列表的缩进线,让你更清楚当前的层级关系。
总结建议
- 如果你想要“折叠一大段内容”: 使用
> [!NOTE]- 标题语法。 - 如果你只是想“折叠列表层级”: 推荐安装 Outliner 插件,配合原生列表使用。
- 如果你想要 Notion 的视觉风格: 强烈推荐换用 Minimal 主题。
--【壹】--:
Ctrl+P和/都能调出命令,问题的核心是命令列表里面没有callout?
核心原因:中文翻译问题(最可能)
如果你的 Obsidian 界面是中文的,在 / 命令菜单里搜索英文 “Callout” 是搜不到的。
- 请尝试: 按下
/后,输入 “标注” (Callout 的中文翻译)。 - 或者: 输入 “bz” (标注的拼音首字母)。
你会发现有一个选项叫 “插入标注”,那个就是 Callout。
--【贰】--:
学到了,感谢大佬分享。
--【叁】--:
这个折叠是每行都要加 > 符号吗? 感觉有点蠢
我用的 details 加样式做的折叠…
--【肆】--:
这好用!感谢佬!
--【伍】--:
举一反三:你可以怎么改?
1. 改变颜色和图标
把 NOTE 换成其他单词,可以改变样式:
> [!TIP]- 这是一个提示(绿色)
> 适合放一些小技巧。
效果:
[!TIP]- 这是一个提示(绿色)
适合放一些小技巧。
> [!danger]- 这是一个危险警告(红色)
> 适合放非常重要的警告信息。
效果:
[!danger]- 这是一个危险警告(红色)
适合放非常重要的警告信息。
2. 默认展开,但允许折叠
把 - 换成 +:
> [!SUMMARY]+ 默认展开的摘要
> 你看,这一段默认是显示出来的,但是你可以点击标题把它收起来。
效果:
[!SUMMARY]+ 默认展开的摘要
你看,这一段默认是显示出来的,但是你可以点击标题把它收起来。
快速输入的技巧
你不需要死记硬背这个语法。在 Obsidian 中,你可以:
- 使用命令面板: 按
Ctrl + P(Mac 是Cmd + P),输入 “Callout”,选择 “Insert Callout”。 - 使用斜杠命令: 在正文中输入
/callout并回车。
这样编辑器会自动帮你生成基本结构,你只需要填内容即可。
--【陆】--: Kevins:
details
老哥你这个感觉方便不少了,css发出来抄哈作业
--【柒】--:
这个记住下,都是知识点,哈哈哈哈,之前每次要问AI
--【捌】--: 龙骧:
> [!NOTE]- 这里是标题(点击展开) > 这里是隐藏的内容。 > 可以放文字、图片、甚至其他笔记链接。
[!NOTE]- 这里是标题(点击展开)
这里是隐藏的内容。
可以放文字、图片、甚至其他笔记链接。
在OB里面note不区分大小写,写成NOTE、Note、note都是可以识别的
--【玖】--:
LinuxDO网站和Obsidian真的是无缝衔接哇!配合得非常舒适,也完全支持OB中的语法。
--【拾】--:
我个人觉得大纲非常好的方式,不知道为啥大部分笔记原生都不支持
--【拾壹】--: 龙骧:
callout
要是就是空行和缩进呀,比如一段代码配置
这种用不到的时候就该折起来不占空间
我是参考的vitepress做的
image958×1046 23.1 KB
--【拾贰】--:
感谢大佬分享,学习了,之前我对OB的开发不足1%
--【拾叁】--:
这个折叠块,感觉还是思源做的比较好,直接就可以按一级标题/二级标题等进行折叠
--【拾肆】--:
感谢分享,受用了
--【拾伍】--:
如果内容没有空行,没有缩进的话,可以不加

