ホームページの色コードとは?HEX・RGB(A)・HSL(A)のカラーコードの違いと使い方を解説

ホームページやWebデザインでは、文字色や背景色、ボタンの色などを「色コード」で指定します。

例えば、白は「#FFFFFF」、黒は「#000000」といったように、色を数字や英字の組み合わせで表現します。

しかし、
・色コードとは何?
・HEXとRGBは何が違う?
・どれを使えばいい?
・ホームページ制作ではどう指定するの?
と疑問に感じる方も多いでしょう。

ここでは、ホームページ制作で使われる色コードの仕組みからHEX・RGB・RGBA・HSL・HSLAのカラーコードの種類の違い、使い方、実務での使い分け方までわかりやすく解説します。

色コードとは?なぜホームページには「色コード」が必要なのか?

色コードとは、色を数値や文字列で表現する仕組みです。

人間は「赤」「青」「緑」といった言葉で色を認識しますが、コンピュータは言葉だけでは正確な色を理解できません。
そのため、色を数値化した「色コード」を利用して、世界中のブラウザや端末で同じ色を表示できるようにしています。

人間のとコンピュータののズレを防ぐ
例えば「赤」と聞いても、人によって思い浮かべる色は異なります。

・真っ赤
・少し暗い赤
・オレンジに近い赤
など、人によってイメージが変わります。

しかし「#FF0000」と指定すれば、誰が見ても同じ赤として表示されます。

Webサイトのデザインシステム(一貫性)を保つため
企業サイトやECサイトでは、ページごとに色が変わるとブランドイメージが崩れてしまいます。

色コードを統一することで、
・ロゴ
・ボタン
・見出し
・リンク
などのデザインを一貫して管理できます。

なぜRGBなのか?Webと印刷物の違い
Webは 光(ディスプレイ) で色を表現するため、RGB(赤・緑・青)を基準とした色空間 を使います。

一方、チラシやパンフレットなどの印刷物は、インクの三原色であるCMYK(Cyan・Magenta・Yellow・Key plate)を使います。

Webと印刷物では色の根本的な仕組みが異なるため、ホームページ制作では必ずWeb用のルール(RGBベース)に従う必要があります。

ホームページでよく使う色コードの種類と特徴

Web制作の現場で使われる、主要な3つの形式とその特徴を解説します。

① HEX(16進数カラーコード)

書き方例:#FF0000(赤)、#333333(濃いグレー)

特徴:Web制作で最も一般的な形式です。シャープ(#)の後に、16進数(0?9、A?F)の英数字を6桁続けて書きます。2桁ずつが左から「赤・緑・青(R・G・B)」の強さを表しています。

メリット:文字数が短く、CSSにコピペしやすいため、全体のコードがすっきりします。

【補足】3桁・6桁・8桁の違い
・#FFF(省略形):#FFFFFF のように、2桁ずつの値が同じ場合に3桁に縮めた書き方。
・#FFFFFF(通常):最も標準的な6桁の書き方。
・#FFFFFFFF(透明度つき):末尾にさらに2桁足して、透明度(不透明度)まで表現した8桁の書き方。

【1分でわかる】「16進数」ってなに?

私たちが普段の生活で使っているのは「10進数」です。これは、0からスタートして9までいくと、次は桁が上がって10になりますよね。つまり、「10集まると1桁上がる数え方」です。

一方、コンピュータの世界でよく使われる「16進数」は、「16集まると1桁上がる数え方」をします。

「でも、9の次の数字なんてないよ?」と思いますよね。そこで16進数では、9の代わりにアルファベットの「A~F」を数字として使います。

10進数(いつもの数え方):0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15

16進数(カラーコード):0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

つまり、16進数の世界では「F」が一番大きい数字(10進数でいう9のような存在)になります。

カラーコードで考えると?

色コードの #FF0000(赤)でいうと、最初の2桁「FF」は赤の強さを表しています。00が「ゼロ(全く色がない状態)」で、FFが「MAX(これ以上ないくらい限界まで強い状態)」という意味になります。「英数字が混ざっていて難しそう」と感じるかもしれませんが、ただの「16個で1周する数え方」であり、「Fに近づくほど色が濃く(強く)なる」だけです。

② RGB / RGBA

書き方例:rgb(255, 0, 0)、rgba(255, 0, 0, 0.5)(不透明度50%の赤)

特徴:光の三原色(赤・緑・青)の量を、それぞれ「0から255」の10進数の数値でダイレクトに表す方法です。

メリット:末尾に「A(アルファチャンネル)」を付け足すことで、背景や文字をかんたんに半透明(透かし)にできるのが最大の強みです。

③ HSL / HSLA

書き方例:hsl(0, 100%, 50%)

特徴:人間が頭の中でイメージする色の感覚に一番近い指定方法です。以下の3つの要素を使って色を組み立てます。数値を見ただけで「少し暗くしよう」「少し鮮やかにしよう」という調整が直感的に行えます。

HSLを構成する3つの要素

H(Hue:色相):0〜360の度数(角度)で「色味」を表します。色相環(カラーサークル)をイメージしたもので、0は赤、120は緑、240は青、360で一周してまた赤に戻ります。

S(Saturation:彩度):0%〜100%で「色の鮮やかさ」を表します。0%は完全にくすんだ灰色(モノトーン)になり、100%は最もビビッドで鮮やかな色になります。

L(Lightness:輝度/明度):0%〜100%で「色の明るさ」を表します。0%は真っ黒、100%は真っ白になり、50%がその色が一番きれいに見える本来の明るさです。

【「HSL」具体例】

HEX(#ffffffなど)やRGBの場合、色をちょっと明るくしたり暗くしたりしたい時、すべての数値をバラバラに変える必要があり、人間の頭では計算できません。
しかし、HSLなら「1つの数字」を変えるだけで、直感的に色をコントロールできます。

例1:明るさ(L)だけを変えて「ボタンのホバー(マウスホバー)色」を作る
ホームページのボタンによく使われる「きれいな青」をベースに、最後の数値(明るさ:L)だけを動かして、マウスを乗せたとき(ホバー時)の少し暗い青を作ります。

状態HSLコード見た目のイメージ解説
通常時hsl(210, 100%, 50%)ボタンH(色相)210のきれいな青。明るさ(L)は中間の50%。
ホーバー時hsl(210, 100%, 30%)ボタンHとSはそのまま。明るさ(L)を30%に下げて少し暗く。

上記HSLコードのHTML、CSSでの記載例

<!DOCTYPE html>
<html lang=”ja”>
<head>
<meta charset=”UTF-8″>
<title>ホバーで背景の青が濃くなるボタン</title>

<style>
/* 通常時のボタンデザイン(背景は青、文字は白) */
.c-accent-button {
display: inline-block;
padding: 12px 24px;
background-color: hsl(210, 100%, 50%); /* ① 最初は「きれいな青」(明るさ50%) */
color: hsl(210, 100%, 100%); /* ② 文字色は「白」(明るさ100%) */
text-decoration: none;
border-radius: 4px;
font-weight: bold;/* 背景色(background-color)だけを0.3秒かけてじんわり変化させる */
transition: background-color 0.3s ease;
}

/* マウスが乗ったとき(:hover)のデザイン */
.c-accent-button:hover {
background-color: hsl(210, 100%, 30%); /* ③ ホバー時に、背景の青を「20%濃く(暗く)」する! *//* 文字色(color)は書かない(=通常時の「白のまま」をキープ) */
}
</style>
</head>

<body>
<!– 画面に表示されるボタン –>
<a href=”#” class=”c-accent-button”>ボタン</a>
</body>
</html>

例2:彩度(S)だけを変えて「無効化(クリックできない)ボタン」を作る
真ん中の数値(彩度:S)を動かすと、色の「鮮やかさ」が変わります。これを利用して、入力フォームの未入力時などでよく使う「今はクリックできません」という無効化ボタン(グレーアウト)を一瞬で作ります。

状態HSLコード見た目のイメージ解説
通常時hsl(210, 100%, 50%)送信する100% ➔ 色が一番鮮やかで元気な状態。
ホーバー時hsl(210, 0%, 50%)送信する0% ➔ 鮮やかさが完全に消えて「灰色」になった状態。

❓ なぜ「グレー」にすると、みんなが無効だと分かるの?
「グレーにするだけで、本当にユーザーはクリックできないって気付いてくれるの?」と疑問と思いますが、インターネットの世界において「グレーアウト(灰色にする=機能がオフの状態)」は世界共通の約束事(暗黙のルール)になっています。
これには人間の心理と、これまでのWebの歴史が関係しています。

1.色が持つ「生命感」が消えるから
カラフルな色は「アクティブ(動いている)」という印象を人間に与えますが、モノトーン(灰色)になると「活動が止まっている」「命が通っていない」という印象に様変わりします。そのため、直感的に「今は使えないんだな」と伝わります。

2.すべてのパソコンやスマホがそう作られているから
WindowsやMac、iPhone、Androidなどの設定画面を思い浮かべてみてください。変更できない項目や、選択できないボタンはすべて自動的に「薄いグレー」で表示されます。ネットユーザーは日常的にこれを見ているため、無意識のうちに「グレー=押せない」という学習ができています。

【注意】グレーにするだけでは「片手落ち」!
ただし、ホームページ制作の実務では、色をHSLで「S: 0%(グレー)」にするだけでなく、HTMLやCSS側でも「本当にクリックできない設定」をセットで行うのが鉄則です。
画面の「色」が見えにくい人や、音声読み上げソフトを使っている人にも「無効であること」を正しく伝える必要があるからです。

具体的には、ボタンのコードに以下のような設定を組み合わせます。
HTMLに disabled をつける:要素を完全に無効化し、クリックしても反応しないようにする。

CSSで cursor: not-allowed; をつける:マウスを乗せたときに、矢印が「禁止マーク(🚫)」に変わるようにする。

色の変更(デザイン)と、正しいコード(仕組み)を組み合わせることで、初めて「誰にとっても使いやすい親切なホームページ」が完成します。

例3:色相(H)だけを変えて「信号機(赤・黄・緑)」を作る
色の鮮やかさ(S)と明るさ(L)は完全に同じに固定したまま、最初の数値(色相:H)だけをガラッと変えて、トーン(雰囲気)が綺麗に揃った3色のバリエーションを作ります。

信号の色HSLコード見た目のイメージ最初の数値(H)の内容
hsl(0, 100%, 50%)0=赤を表す角度(
hsl(60, 100%, 50%)60=黄色を表す角度
hsl(120, 100%, 50%)120=緑を表す角度

:「0=赤を表す角度」とは、「360度くるくる回る、色の切り替えダイヤル」だとイメージしてください。丸い円を1周すると「360度」。これと全く同じです。
ダイヤルを動かさない(0度) ➔ 赤少し右に回す(60度) ➔ 黄さらに右に回す(120度) ➔ 緑下に回す(240度) ➔ 青ぐるっと1周して元の位置(360度)に戻る ➔ また最初の 赤 になる。「角度」という難しい言葉を使っていますが、中身はただの「色を選ぶための0〜360までの番号」です。

なぜ人気なのか?
モダンなWeb制作では、CSS変数(カラートークン)と組み合わせてHSLがよく使われます。
「色相(H)だけを変えて、明るさと鮮やかさはそのまま保った別パターンのテーマカラーを作る」といった作業が、数値を1箇所いじるだけで自動化できるため注目を集めています。

HEXとRGBの違い

項目HEXRGB
書き方#FF0000rgb(255,0,0)
読みやすさ△(暗号のように見える)〇(10進数で直感的にわかりやすい)
利用度
透明度の指定△(8桁HEXでも可能だが少し難解)◎(RGBAで簡単)

どれを使えばいい?使い分けの基準

実際にHTMLやCSSを書く際、どの色コードを選ぶべきかの明確なルール(正解)は以下の通りです。

1.基本は「HEX(16進数)」で一貫して統一する
FigmaやAdobe XDなどのデザインツールから一番コピペしやすく、世界中の現場で実務のスタンダードとなっているため、迷ったらHEXを選びましょう。

2.「透明度(透かし)」を入れたいときだけ「RGBA」に変える
背景をじんわり透けさせたいときや、ボタンにマウスを乗せた(ホバーした)瞬間に少しだけ色を薄くしたいときなどは、RGBAを使うとスマートに実装できます。

3.チーム開発では「HSL」の採用も検討する
1つのベース色から「薄い色」や「濃い色」のバリエーションをシステム的に量産したい場合は、HSLを使うと効率的です。

HTML・CSSで色コードを指定する方法

ホームページを作る際の色コードの書き方、指定方法を解説します。

【重要】HTMLタグで色を指定するのは「完全非推奨」!

大前提として、HTMLのタグを使って色を指定する方法は、現在のWeb制作では完全に「非推奨(やってはいけない古い書き方)」となっています。

昔のHTMLでは <font color="#ff0000">テキスト</font>のようにHTML側に直接色を書く時代もありましたが、現在は「HTMLは文章の構造を作るもの」「CSSは見た目を整えるもの」という役割分担が厳格に決まっています。

そのため、色コードを指定するときは、必ずCSS(スタイルシート)を使って記述しましょう。

⭕ HTMLとCSSを組み合わせた正しい書き方(3つの基本)

ホームページで色を塗る場所は、主に「文字」「背景」「枠線」の3つです。

下記は、HTMLのタグの中に直接詰め込むのではなく、HTMLの<head&rt;タグの中に作った<style&rt;タグの部屋にまとめて記述するか、外部のCSSファイル(style.cssなど)に分けて書くのが、プロの現場の正しいルールです。

HTMLでベースを作り、CSSで色コードを指定する具体的なコード例を紹介します。

① <p></p>タグ内の文字色を指定する(color)

文章を表す <p> タグの中の文字色を変えるときは、CSSの color プロパティを使います。

HTMLコード

<p>この文章の文字色が濃いグレーになります。</p>

CSSコード

/* pタグ(文章)の文字色を濃いグレー(#333333)にする */
p {
color: #333333;
}

② 背景色を指定する(background-color)

サイト全体の背景に色を塗るときは、ページ全体を包む <body> タグに対して background-color を使います。
HTMLコード

<body>
<h1>会社からのお知らせ</h1>
<p>ホームページの背景全体に色が付きます。</p>
</body>

CSSコード

/* サイト全体の背景を、目に優しい薄いグレーにする */
body {
background-color: #f5f5f5;
}

③ class=”box”(box要素)の枠線の色を指定する(border)

特定の枠に目印をつけた class=”box” に対して線を引くときは、CSSの border プロパティを使い、「太さ」「線の種類」「色コード」をセットで指定します。
HTMLコード

<div class=”box”>この要素の周りに薄いグレーの枠線が付きます。</div>

CSSコード

/* ボックスの周囲に、1ピクセルの薄いグレーの直線を引く */
.box {
/* 1ピクセルの太さ(1px)で、直線(solid)の、薄いグレー(#cccccc)の線を引く */
border: 1px solid #cccccc;
}

アクセシビリティ(WCAG)と色コードの関係

ホームページ制作では、視覚に特性がある人や、太陽光の下で画面を見る人など、誰もが文字をストレスなく読めること(アクセシビリティ)が求められます。
そこで重要になるのが、背景色と文字色の間の「コントラスト比(明暗の差)」です。

WCAGのコントラスト比とは?

Webアクセシビリティの国際基準「WCAG」では、背景色と文字色の間の「コントラスト比(明暗の差)」に明確な目標数値が定められています。

通常の文字:コントラスト比 4.5:1 以上が必要
大きい文字(見出しなど):コントラスト比 3:1 以上が必要

例えば、白い背景(#FFFFFF)に薄いグレー(#CCCCCC)の文字を載せると、コントラスト比が足りず不合格となり、多くの人にとって読みにくいサイトになってしまいます。

コントラスト比って自分で計算できるの?

結論から言うと、自力で計算するのは絶対に無理です。
コントラスト比の計算には、「色の相対輝度」という、光の波長や複雑な数式を使った高度な計算が必要になります。「#333333 と #ffffff の差だから……」と、色コードの引き算でパッと出せるような簡単なものではありません。

このように「計算の難易度が非常に高い」という大きな壁があるからこそ、実務では一瞬で自動計算してくれる『チェックツール』を使うのが大前提となっています。

色コードの組み合わせチェックツール

自分で計算する必要は一切ありません。以下の無料ツールに、使いたい2つの色コード(背景色と文字色)を入力するだけで、一瞬で合格・不合格を教えてくれます。

① Contrast Checker(Webサイト)
Contrast Checkerは、もっとも手軽なブラウザ上のツールです。
「Foreground(文字色)」と「Background(背景色)」の2箇所に色コードを貼り付けるだけで、基準(WCAG)をクリアしているかを「PASS(合格)」「FAIL(不不合格)」で分かりやすく表示してくれます。

② Chrome DevTools(検証ツール)
ホームページのコードを書いたあと、Google Chromeブラウザの「検証画面(F12ボタン)」を開いてCSSの色コードを確認すると、自動的に現在のコントラスト比が表示されます。基準を満たしていない場合はアラートマークが出るため、コーディングしながらその場で修正するのに非常に便利です。

ホームページの色コードを扱うときの注意点

英字の大文字・小文字はどっちでもいい
#ffffff と大文字の #FFFFFF は、ブラウザの認識としては完全に同じです。どちらを使ってもエラーにはなりません。
ただし、コードの美しさを保つために、同じプロジェクト内(チーム内)ではルールを統一した方がいいでしょう。

3桁に省略できるコードを知っておく
同じ文字が連続する場合は3桁に縮めて書くことができます。
・#ffffff ➔ #fff
・#000000 ➔ #000
・#ff0000 ➔ #f00

コードの記述量を減らし、ファイルの容量をわずかに軽量化できるため、実務でもよく使われます。

ホームページ制作でおすすめの色の決め方(黄金比率)

ホームページ全体のカラーバランスを綺麗に整えるためには、使う色の数を絞り、以下の「3つの役割と比率」を意識するのが鉄則です。

ベースカラー(70%):背景など、最も広い面積を占める色。主に白や薄いグレー。
メインカラー(25%):サイトの印象を決めるブランドカラー。企業のロゴ色など。
アクセントカラー(5%):お問い合わせボタンなど、一番目立たせたい場所に使う色。メインカラーの反対色(補色)などが選ばれます。

3色以内にまとめる
色を増やしすぎると統一感が失われます。全体を3色以内にまとめることで、初心者でもプロっぽく洗練されたホームページを作ることができます。
使いやすい3色のカラーセット例
・ベースカラー(70%):#F7F6F0
・メインカラー(25%):#1C1E21
・アクセントカラー(5%):#9E441B

<!DOCTYPE html>
<html lang=”ja”>
<head>
<meta charset=”UTF-8″>
<title>アイボリー背景と鮮やかなオレンジが引き立つホームページサンプル</title>

<style>
/* =============================================
1. ベースカラー(70%):背景色
ほんんりと黄色みを帯びた、上質でクリーンなサンドアイボリー。    ============================================= */
body {
background-color: #F7F6F0;
color: #1C1E21; /* メインカラー:真っ黒ではない、静かで深いインクグレー */
font-family: -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, “Helvetica Neue”, Arial, sans-serif;
line-height: 1.8;
padding: 40px;
}

/* 読みやすく包む白いボックス */
.container {
background-color: #FFFFFF;
padding: 45px;
border-radius: 8px;
max-width: 600px;
margin: 0 auto;
box-shadow: 0 10px 40px rgba(28, 30, 33, 0.02;
}

/* =============================================
2. メインカラー(25%):見出しや主要なデザイン
============================================= */
h1 {
color: #1C1E21;
font-size: 26px;
font-weight: 700;
letter-spacing: -0.02em;
margin-top: 0;
margin-bottom: 24px;
}

/* =============================================
3. アクセントカラー(5%):一番目立たせたいボタン
白い文字を最高に美しく引き立てる、洗練された「ディープ・テラコッタオレンジ」    ============================================= */
.cta-button {
display: inline-block;
background-color: #C25A28; /* ① 白い文字がパッと映える、美しく力強いオレンジ */
color: #FFFFFF; /* ② 文字色は「白(#FFFFFF)」を固定 */
padding: 14px 28px;
text-decoration: none;
font-weight: 600;
border-radius: 4px;
margin-top: 24px;
letter-spacing: 0.03em;

/* ホバー時に背景のオレンジをさらに濃くする */
transition: background-color 0.25s ease;
}

.cta-button:hover {
background-color: #9E441B; /* ③ ホバー時に背景をさらに深いオレンジへ */

/* 文字色(color)は書かない(=「白のまま」を完全にキープ!) */
}
</style>
</head>
<body>

<!– 画面に表示される本文 –>
<div class=”container”>
<h1>時を超える、ミニマル・Webデザイン</h1>
<p>背景に少し黄色みを取り入れる際、原色や派手な色を組み合わせてしまうと、デザイン全体のバランスが崩れてしまいます。</p>
&ems<p>背景のアイボリー(砂)に、深いインクグレー(墨)でコントラストを効かせ、アクセントとして洗練されたオレンジを5%だけ添える。</p>
<p>色数を極限まで絞り、トーンを静かに統一することこそが、世界中のトップブランドが実践している「洗練」の正体です。</p>

<!– 白い文字でオレンジが主役になったアクセントボタン –>
<a href=”#” class=”cta-button”>コレクションを見る</a>
</div>

</body>
</html>