覚えておいてください: 要素は複数のスタイル クラスを持つことができます。レイアウトは静的なままで、カラーリングとは別のものになるため、レイアウトとカラーのクラスを別々に、まったく別のファイルで定義する必要があります。
したがって、テーマに対してやりたいことは、次のように別の css ファイルでいくつかの色を定義することです。
.DefaultBackgroundColor { background-color: white; }
.PrimaryColor { background-color: #123456; }
.PrimaryAsForeground { color: #123456; }
.AccentColor { background-color: #654321; }
.AccentAsForeground { color: #654321; }
.ComplementColor { background-color: #333333; }
.ComplementAsForeground { color: #333333; }
.DefaultTextColor { color:black; }
.HighlightTextColor { color:black; font-style:bold; }
.ComplementTextColor { color:white; }
さらに色を追加することもできますが、アイデアは得られます。次に、HTML で、レイアウト クラスに加えて、これらのクラスを要素に追加します。たとえば、これらのクラスを使用して、StackOverflow のナビゲーション ボタンを次のようにスタイル設定できます。
<div class="nav ComplementTextColor">
<ul class="primarynav">
<li class="PrimaryColor"><a href="/questions">Questions</a></li> <!-- selected -->
<li class="ComplementColor"><a href="/tags">Tags</a></li>
<li class="ComplementColor"><a href="/users">Users</a></li>
<li class="ComplementColor"><a href="/badges">Badges</a></li>
<li class="ComplementColor"><a href="/unanswered">Unanswered</a></li>
</ul>
</div>
明らかに、これらの色は構成されており、一緒には機能しませんが、それがこのセットアップの美しさです. これにより、あちこちで同じ色を定義する必要がないため、色をいじったり微調整したりするのが非常に簡単になります。一度設定すれば、ごくわずかな変更を加えるだけで、サイトの色を完全に変更できます。
欠点は、あなたが限られているということです。たとえば、私が投稿した html を使用すると、「フック」を設定していないため、css ファイルを変更するだけで、ここにあるボタンを他のすべてとは異なる色にすることはできませんでした。しかし、簡単な編集を 1 回行うだけで、彼らがここで使用している醜いオレンジ色を全面的に変更することができます。