You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

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),背景就会“消失”成透明。

我已经排查的点:

  1. 确认CSS选择器callout[data-callout="infobox"]是正确的,毕竟编辑模式下样式能正常生效
  2. 给样式加了!important强制优先级,结果还是没用
  3. 用Obsidian开发者工具看了,阅读模式下这个元素的背景色属性确实被应用了,但视觉上就是透明的,感觉像是被什么属性覆盖或者和继承的样式冲突了?

有没有大佬遇到过类似的问题?或者能给点排查的方向?感激不尽!

火山引擎 最新活动