主题组件不再覆盖主题 CSS 了吗?

不知为何,Discourse 处理主题组件中 CSS 的行为发生了变化。 编辑:我误解了自己的操作。我将保留此主题(位于 Development 而非 Contribute > Bug),以供日后参考。

一个极简示例:

在 Discourse 3.4.2 版本以及今早测试通过的版本中(但昨天在 3.4.1 版本上也出现过此问题)

主主题 #1:导航容器周围有红色边框

主题组件 #2:导航容器周围有蓝色边框

主题组件 #2 已分配给主题 #1

预期结果

导航容器周围有蓝色边框

实际情况

导航容器周围有红色边框

TLDR 我是个傻瓜。

样式表的排序方式如下

          if stylesheets.size > 1
            stylesheets =
              stylesheets.sort_by do |s|
                [s[:remote] ? 0 : 1, s[:theme_id] == @theme_id ? 1 : 0, s[:theme_name]]
              end
          end

当我试图重现时,我只使用了本地样式表。

实际上,样式表的加载顺序是:

  • 远程样式表
    • 主题组件,按字母顺序
    • 主要主题
  • 本地样式表
    • 主题组件,按字母顺序
    • 主要主题