Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【CSS Modules】contrast-color()関数の使い方

contrast-color()関数の使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

contrast-color()関数は、指定された背景色に対して、最も読みやすい前景色を自動的に選択し、その色を返す関数です。この関数は、主にWebページのアクセシビリティを向上させ、ユーザーインターフェースのデザインを効率化するために利用されます。

この関数は、基準となる背景色と、その背景色に対して使用を検討したい色の候補を引数として受け取ります。例えば、contrast-color(var(--background-color), black, white)のように記述すると、--background-colorで指定された背景色に対し、黒(black)と白(white)のどちらがより高いコントラスト比を持つかを自動的に判断し、最適な色を返します。これにより、背景色が変わるような動的な環境でも、常に高い視認性を保つことが可能になります。

contrast-color()関数を利用することで、開発者は手動で色のコントラスト比を計算したり、条件分岐で色を切り替えたりする手間を省けます。特に、ユーザーがダークモードやライトモードを切り替える際や、異なるテーマを適用する際に、背景色に応じてテキストの色などを自動で調整する場面で非常に有効です。これにより、デザインシステムにおいて、柔軟性と一貫性のあるカラースキームを効率的に実装できます。

ウェブコンテンツ・アクセシビリティ・ガイドライン(WCAG)などの標準では、テキストと背景のコントラスト比が重要な要件とされています。この関数は、視覚に障がいを持つユーザーや、特定の環境下で画面を見ているユーザーにとって読みやすいデザインを実現するための強力なツールとなり、アクセシビリティ要件をプログラム的に満たす手助けをします。CSS Modulesなどの技術と組み合わせることで、コンポーネントごとのスタイル定義において、より動的で保守性の高いスタイルシートを記述できるようになります。

公式リファレンス: contrast-color()

構文(syntax)

1contrast-color( <background-color> from <color-list> [ to <fallback-color> ]? )

引数(parameters)

<color>
  • <color>: コントラストを計算する基準となる色

戻り値(return)

color

contrast-color() 関数は、引数として与えられた色に対して、コントラストの高い色を計算して返します。この戻り値は、視覚的なコントラストを向上させるために使用される色を指定します。

関連コンテンツ

関連プログラミング言語