您好,我找不到其他人报告此问题,但在更新到 3.1.0.beta4 后,我检查了多个主题,发现分类框的边框颜色内联 CSS 似乎已损坏。
原因如下:

不确定为什么它同时注入了颜色和 var(?)
如果您能提供任何帮助或想法,我将不胜感激。
您好,我找不到其他人报告此问题,但在更新到 3.1.0.beta4 后,我检查了多个主题,发现分类框的边框颜色内联 CSS 似乎已损坏。
原因如下:

不确定为什么它同时注入了颜色和 var(?)
如果您能提供任何帮助或想法,我将不胜感激。
我认为 @MarcP 在 Colorful Categories - #7 by MarcP 的主题组件主题中也提到过类似的内容。您是否也使用了该组件?
谢谢!不,我试过使用 Material 主题,但也试过其他几个主题。不幸的是,行为还是一样的。更新后就发生了这种情况。到目前为止,其他一切似乎都还好。
说得好。现在我想起来了,边框在核心部分需要有边框颜色。这与组件无关,因为即使禁用了组件,边框也都是灰色的。
哎呀。我错读了问题 @JammyDodger,但我没有安装这个组件。
我想知道是否有巧妙的方法可以解决这个问题?我唯一能想到的就是删除一些 JS 中的字符?
这是 Discourse 的一个回归问题,与主题或插件无关,我们很快就会修复!
谢谢!供将来参考,我假设无法通过 CSS 轻松访问类别颜色,对吗?
也许可以通过 JS 访问?
我们最近对 CSS 进行了一些更改,通过将类别颜色添加为自定义属性(CSS 变量)来使其更易于访问。
您可以在浏览器检查器中看到它们:
因此,只要您知道类别的 ID,就可以在 CSS 中访问其颜色。查找 ID(数字)的最简单方法是查看类别 URL,例如 Support:https://meta.discourse.org/c/support/6 — 要使用支持类别的颜色,您可以这样做:
.your-class-name {
background: var(--category-6-color);
}
此修复程序已合并(https://github.com/discourse/discourse/commit/e43ac00bf40d1da662ffbe61cd96b50b1696d21e),因此在更新 Discourse 后,颜色应该会恢复。
太棒了! 谢谢你这么做。 ![]()
太棒了。不过我想对于这个问题,唯一的解决方法是检查分类的 ID,然后使用 JS 应用正确的 CSS 变量。
除非您有其他变通方法?我很乐意编写代码并在此分享。
此修复已合并 (FIX: add category colors back to categories pages (#21977) · discourse/discourse@e43ac00 · GitHub),因此在更新 Discourse 后颜色应该会恢复。
太快了!
与此同时,我刚刚完成了一个变通方法 ![]()
以防万一,我将代码留在这里。
var categoryBoxes = document.getElementsByClassName('category-box');
for (var i = 0; i < categoryBoxes.length; i++) {
var categoryBox = categoryBoxes[i];
var dataCategoryId = categoryBox.getAttribute('data-category-id');
categoryBox.style.border = '2px solid var(--category-' + dataCategoryId + '-color)';
}
只是为了再次确认 →
是否有办法从前端用户界面更新?我认为我的更新已通过测试。
或者我需要等到 3.1.0.beta5?
默认情况下,大多数站点都已通过测试,您可以随时从 /admin/upgrade 进行更新。
我真不敢相信我竟然不知道这个。哈哈\n\n一如既往地感谢!
在我的实例上,移动版本仍然存在此问题,桌面版本则没问题 ![]()