请求主题的 CSS 标识符,主题组件(插件也是?)

我的主题组件使用对象作为设置,并提供了不少字段。

当前应用于对象设置的网格样式对垂直选项卡列和模式字段使用了非常窄的列。

我想为对象设置提供一个替代的显示方式,但我看不到一种方法可以引入仅针对我的主题组件更改设置的方式;我不想将我的 CSS 覆盖全局应用于所有主题。

Discourse 是否有可能为每个主题和主题组件在 DOM 中添加一个 CSS 标识符,以便可以添加不同的 CSS 规则来定位特定的主题设置页面?

这是我在我的站点上使用的简单 CSS 覆盖,它被全局应用:

.schema-setting-editor .schema-setting-editor__wrapper {
    grid-template-columns: minmax(15em, 0.3fr) 1fr;
    gap: 0 3rem;
}
.schema-setting-editor .schema-field {
    grid-template-columns: 1fr;
    gap: 0;
    background-color: var(--tertiary-100);
    padding: 1rem 5px;
}

默认样式和覆盖后的样式:

5 个赞

“修复”非常简单,就像

但我对几件事感到好奇

  1. 如果我们让主题作者可以轻松自定义其设置页面的外观,我们是否会因为它们都不同而使用户更难使用这些页面?

  2. 我们是否应该在核心中修复这个问题,以便主题设置页面能更好地利用可用空间?:thinking: cc @product-managers

2 个赞

这似乎是一个合理的担忧。作为用户,我喜欢 Discourse 的普及性和一致性,这使得我可以轻松地加入并参与新的论坛。作为管理员,如果我需要在其他站点提供帮助,我也会欣赏那里的一致性。

(我想起了我被要求提供给朋友和家人的所有技术支持。我乐意帮助解决 iPhone 的问题,但我害怕处理 Android,因为每部该死的手机都不同。)

是的,我不认为这是我们想要鼓励的事情。@martin 对这个问题有相当多的背景信息,因为它与我们很久以前为整个管理部分确立的 UI 指南有关。

一般来说,如果我们没记错的话,我们认为管理部分不应该被自定义。

是的,我认为将此主题视为 UX 会更有意义。

@jordan.vidrine 我认为这与您早些时候将内容转换为 formkit 的工作以及对 formkit 本身的反馈有一些重叠。

1 个赞

是的,我非常反对这样做,Discourse 管理 UI 不应该被自定义,UI 的一致性(好吧,大部分,仍有少数页面需要解决)是管理体验的关键部分。