【发布时间】:2021-03-05 17:14:12
【问题描述】:
我有一个发布文章的网站。它由 Jekyll 组成,并由 GitHub 部署。该网站有一个按钮,可以将亮模式切换到暗模式,反之亦然,无需任何页面刷新。
今天我已经为它安装了 disqus 代码。它带有深色或浅色模式。所以我只是将它添加到我的切换器功能中:
const disqusThread = $('#disqus_thread')
const ps = $('#disqus_thread *')
tdm.onclick = function() {
disqusThread.css('background-color', '#111')
ps.attr('style', 'color: #fff !important')
.
.
.
这确实改变了背景,但我无法改变文本颜色。如果我尝试filter: invert(100%) 一切都很好,但图像看起来也倒置了。使用 #disqus_thread *:not(img) 也不起作用。
如果我打开 Firefox 的检查器工具,我会看到属性中有 !important。所以我不能再改变风格了。即使在基本的 CSS 中,来回切换实际上也不起作用。
有什么方法可以不使用滤镜来翻转颜色?
【问题讨论】: