Alex_P
(Alex P.)
1
このようなことをしたいと考えています。
.some-link {
@if var(--scheme-type) == 'dark' {
color: var(--primary);
} @else {
color: #3b5998;
}
}
しかし、CSS に if 文が存在せず、SCSS も実行時に処理されないため、もちろんこれは不可能です。
また、Discourse がダークモードのアクティブ状態を示すクラスを追加していないように見受けられ、CSS ではセレクタ内でカスタムプロパティを使用できないようです。
どのような回避策が最善でしょうか、アイデアがあれば教えてください。
これがお探しのものだと思います:
したがって、color_definitions.scss では以下のように記述できます:
$my-theme-color: dark-light-choose($primary, red);
:root {
--my-theme-color: #{$my-theme-color};
}
その後、テーマ内で新しいダーク/ライト切り替え用のカスタムプロパティを使用します:
body {
color: var(--my-theme-color);
}
Alex_P
(Alex P.)
3
やった、動作しているようです 
パラメータの順序が関数名と一致していないのは少し奇妙ですね。
つまり、dark-light-choose(#3b5998, $primary) である必要があります。