CSSで背景色を指定する方法|単色・グラデーション(linear/radial/conic)の書き方
こんにちは!たく丸です。
今回は、CSSで背景色を指定する方法をご紹介します。
背景はWebページの中で占める面積が広いため、サイト全体の印象を大きく左右します。
CSSを使えば、単色の背景色はもちろん、グラデーションも簡単に設定できます。
背景の基本:backgroundプロパティ
背景を装飾するには、CSSのbackground関連のプロパティを使います。
・background-color:背景色(単色)
・background-image:背景画像やグラデーション
・background:上記をまとめて指定できるショートハンド
何も指定しなければ背景は透明(通常は白く見える)になります。背景に薄く色を入れるだけでも、サイトの見栄えがグッと良くなりますよ。
背景色を指定する(単色)
まずはシンプルな単色の背景色です。
.box {
background-color: #e0f2fe;
}
色の指定方法は、カラーコード(#e0f2fe)、色名(skyblue)、rgb()、hsl()などが使えます。
透明度をつけたい場合は rgb(14 165 233 / 0.3) のように指定します。
See the Pen
NWqGpJY by TAKUYA (@fukutaku)
on CodePen.
背景色を指定するときの注意点は2つです。
1. 背景色は画面全体ではなく、指定した要素に対して入る
2. 要素に中身や高さがないと、背景色が見えない
1. 指定した要素に背景色が入る
See the Pen
指定した要素に背景色を入れる by TAKUYA (@fukutaku)
on CodePen.
外側の要素「background-red」には赤、内側の要素「background-blue」には青を指定しています。このように、要素ごとに背景色を設定できます。
ページ全体に背景色を入れたい場合は、bodyに指定しましょう。
2. 中身がない要素には背景色が見えない
See the Pen
背景色(要素なし) by TAKUYA (@fukutaku)
on CodePen.
中身がないと要素の高さが0になるため、背景色が表示されません。
中身なしで背景色を見せたい場合は、min-heightやpaddingで高さを確保しましょう。
.hero {
min-height: 300px;
background-color: #fef3c7;
}
背景にグラデーションを入れる方法
グラデーションはbackground-image(またはbackground)に、グラデーション関数を指定して作ります。
現在の主要ブラウザでは、-webkit-などのベンダープレフィックスは不要です。
1. 上から下へのグラデーション
.box {
background: linear-gradient(#38bdf8, #6366f1);
}
See the Pen
上から下へのグラデーション by TAKUYA (@fukutaku)
on CodePen.
linear-gradient()は、何も指定しなければ上から下へ色が変化します。
2. 左から右(斜め)へのグラデーション
.box {
/* 左から右へ */
background: linear-gradient(to right, #38bdf8, #6366f1);
}
.box2 {
/* 角度で指定(45度) */
background: linear-gradient(45deg, #f472b6, #facc15);
}
See the Pen
横からグラデーション by TAKUYA (@fukutaku)
on CodePen.
「to right」「to bottom right」などの方向や、「45deg」のような角度で向きを指定できます。
3. 3色以上のグラデーション
.box {
background: linear-gradient(to right, #f87171 0%, #facc15 50%, #4ade80 100%);
}
See the Pen
qBdbVPV by TAKUYA (@fukutaku)
on CodePen.
色をカンマ区切りで並べると、3色以上のグラデーションになります。「%」で各色の位置を指定すれば、色の幅も調整できます。
4. 円形(放射状)のグラデーション
.box {
background: radial-gradient(circle, #fde68a, #f97316);
}
radial-gradient()を使うと、中心から外側へ広がるグラデーションになります。
5. 円すい状のグラデーション
.box {
background: conic-gradient(#f87171, #facc15, #4ade80, #60a5fa, #f87171);
}
conic-gradient()は、中心の周りを回るように色が変化します。円グラフ風のデザインにも使えます。
文字の読みやすさにも注意
背景色やグラデーションの上に文字を置く場合は、背景と文字のコントラストを十分にとりましょう。読みにくいと、せっかくのデザインも逆効果になってしまいます。
まとめ
今回は、CSSで背景色を指定する方法をご紹介しました。
・単色はbackground-colorで指定する
・グラデーションはlinear-gradient、radial-gradient、conic-gradient
・中身がない要素はmin-heightなどで高さを確保する
背景を上手に活用して、センスのあるサイトに仕上げていきましょう!
