本記事ではCSSで表示させている背景色を2色使い、それらを縦・横・斜めに分ける方法について画像付きで分かりやすく解説しています。
仕組みを知らないと一見難しそうに見えますが、1行追加するだけで実装できるので誰でも簡単に作れます。

- HTMLとCSSの基本が体系的に学べる
- Webデザインの基本が学べる
- 1つのWebサイトを作りながら学べる


Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!



初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!
変数名/関数名にもう悩まない!


- 美しいコードが書けるが自然と書けるようになる
- 他の開発者が理解しやすいコードになる


準備(サンプルコード)
以降の見出しでは、下記のサンプルコードを用いて解説しています。自分のパソコンで実行結果を確認したい人や別の数値で検証してみたい人はコピペして使ってください。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
<title>Document</title>
<link rel="stylesheet" href="style.css" />
</head>
<body>
<div id="container">
<p>2色に分割</p>
</div>
</body>
</html>
#container {
width: 100%;
height: 300px;
display: flex;
justify-content: center;
align-items: center;
color:#fff;
font-size: 3rem;
font-weight: 700;
}
background:linear-gradient()を使う
背景色を別々の色で分ける場合、background:linear-gradient()を使います。
background:linear-gradient()の使い方は、0%(始点)〜100%(終点)の間で表示させたい色を指定します。今回の場合、50%(半分)で色を分けたいので、0%〜50%で表示される色、50%〜100%で表示される色を指定します。
background: linear-gradient(
#f00 0%,
#f00 50%,
#00f 50%,
#00f 100%
);


表示結果を確認すると、赤と青の2色が表示されているのが確認できます。
ここからが一番重要なポイントで、background: linear-gradient()には背景色の指定以外にも分割する角度を決めることができます。この角度を設定することで、縦横に分割したり斜めに分割することができます。
角度の単位はdegで設定します。1degは1度を表しており、例えば90degと指定した場合90度の角度で背景色を分割します。
background: linear-gradient(
○○deg,
#f00 0%,
#f00 50%,
#00f 50%,
#00f 100%
);
背景色を様々な角度で分割する
様々な角度で2色の背景色がどのような形で分割されるか確認していきます。
縦に分割
背景色を縦に分割するには、90degまたは270degを指定します。




横に分割
背景色を縦に分割するには、0deg、180deg、360degを指定します。




斜めに分割
左上から右下に分割
背景色を左上から右下に分割するには、45degまたは225degを指定します。




右上から左下に分割
背景色を右上から左下に分割するには、135degまたは315degを指定します。



