CSSは最近、独自のカスケードレイヤーを定義する機能が導入され、ブラウザのサポートも進んでいるようです。まもなくすべての主要ブラウザで利用できるようになることを期待しています。
参考文献:
https://developer.mozilla.org/en-US/docs/Web/CSS/@layer
https://css-tricks.com/css-cascade-layers/
https://www.youtube.com/watch?v=NDNRGW-_1EE
これをDiscourseのコードベースに含めることについて議論されていますか?
これは素晴らしい追加機能であり、特定のセレクタの難しさを軽減し、!importantフラグの使用を回避するのに役立つと思います。
おそらく、メインのコードベースでレイヤーのセットを定義できるでしょう。たとえば次のようになります。
@layer base, layout, theme, utilities;
そして、テーマ開発者は「theme」レイヤーを活用して、セレクタの指定をそれほど厳密にしたり、!importantフラグを使用したりすることなく、簡単にカスタマイズを追加できます。