Obsidian自定义主题深色背景在阅读模式下部分元素不生效求助
Obsidian自定义主题深色背景在阅读模式下部分元素不生效求助
各位Obsidian主题定制的大佬们,求助!我最近在折腾自己的Obsidian自定义主题,遇到了一个特别奇怪的问题,卡了好半天没解决,来问问大家有没有思路。
先给大家看我写的部分主题CSS代码(已移除外部字体外链):
/* KYU THEME FOR OBSIDIAN */ /* EL Theme */ /* Author: Callie ʃ"> */ /* NOTES TO SELF: .fob matches to class=fob #fob matches to id=fob */ :root { --bg1: #414141; --bg2: #2c2c2c; --accent1: #06fffb; --accent2: #ff1453; } /* 导入外部字体(原外链已移除,实际使用请替换为本地字体或合法源) */ /* @import url("外部字体地址"); */ @font-face { font-family: "PhatBold"; src: local("PhatBold"); } .inline-title { font-family: "PhatBold", sans-serif !important; font-size: 1.2em; letter-spacing: 0.1em !important; } body { --background-primary: var(--bg1); --background-secondary: var(--bg2); } .el-p p { background-color: var(--bg2) !important; padding: 10px !important; } /* CALLOUTS */ /* Infobox */ .callout[data-callout="infobox"] { background-color: var(--bg2) !important; }
具体问题细节:
- 我自定义的
infobox类型标注框,在编辑模式下显示完全正常,背景色是设置的--bg2深灰色;但切换到阅读模式后,这个callout的背景直接变成透明的了,完全看不到深色背景。 - 更诡异的是:如果把
background-color改成浅色系(比如red),阅读模式下就能正常显示红色背景;但只要用深色系颜色(不管是用自定义变量--bg2还是直接写#2c2c2c),背景就会“消失”成透明。
我已经排查的点:
- 确认CSS选择器
callout[data-callout="infobox"]是正确的,毕竟编辑模式下样式能正常生效 - 给样式加了
!important强制优先级,结果还是没用 - 用Obsidian开发者工具看了,阅读模式下这个元素的背景色属性确实被应用了,但视觉上就是透明的,感觉像是被什么属性覆盖或者和继承的样式冲突了?
有没有大佬遇到过类似的问题?或者能给点排查的方向?感激不尽!




