We Blog Weblog

グラデーション

Web

2022年5月25日

Gradation

みなさんこんにちは。
ケミストのWeb担当みやのです。

「Web」記事では、これまでに得たWebに関する知識を記録として残していきたいと思います。

今回はグラデーションをかける方法について調べました。

グラデーションは3種類ある

① 線形グラデーション

線形グラデーションとは、一方向にグラデーションさせる方法です。

linear-gradientを使います。

background: linear-gradient(to 方向, 開始色, 終了色);

.linear1 {
  background: linear-gradient(to bottom, #007bff, #fff);
}

横方向にもできます。

.linear2 {
  background: linear-gradient(to right, #dc3545, #ffc107);
}

斜めにもできます。

.linear3 {
  background: linear-gradient(to bottom right, #fff, #28a745);
}

複数の色を指定できます。

.linear4 {
  background: linear-gradient(to top, #40e0d0, #ff8c00, #ff0080);
}

%で区切ることもできます。
グラデーションというか縞模様。

.linear5 {
   background: linear-gradient(to bottom, #ff7f7f 0% 14.28%, #ffbf7f 14.28% 28.56%, #ffff7f 28.56% 42.84%, #7fff7f 42.84% 57.12%, #7fffff 57.12% 71.4%, #7fbfff 71.4% 85.68%, #7f7fff 85.68% 100%);
}

② 円形グラデーション

円形グラデーションとは、真ん中から周りに向かって放射状にグラデーションさせる方法です。

radial-gradientを使います。

background: radial-gradient(中心の色, 周りの色);

.radial1 {
  background: radial-gradient(#fff, #17a2b8);
}

複数の色を指定できます。

.radial2 {
  background: radial-gradient(red, yellow, green, blue);
}

中心点の位置をatで変更できます。

ellipseで楕円形、circleで円形

大きさをclosest-side、closest-corner、farthest-side、farthest-cornerの中から選ぶことができます。

.radial3 {
  background: radial-gradient(ellipse closest-side at 10% 90%, red, blue);
}

.radial4 {
  background: radial-gradient(ellipse closest-corner at 10% 90%, red, blue);
}

.radial5 {
  background: radial-gradient(ellipse farthest-side at 10% 90%, red, blue);
}

.radial6 {
  background: radial-gradient(ellipse farthest-corner at 10% 90%, red, blue);
}

③ 扇形グラデーション

扇形グラデーションとは、中心点の周りをグラデーションさせる方法です。

conic-gradientを使います。

background: conic-gradient(開始色, 終了色);

.conic1 {
  background: conic-gradient(#fff, #333);
  border-radius: 50%;
}

複数の色を指定できます。
謎の光沢感。

.conic2 {
  background: conic-gradient(purple, blue, aqua, green, yellow, orange, red);
  border-radius: 50%;
}

%で区切れば円グラフができます。

.conic3 {
  background: conic-gradient(#007bff 0% 35%, #28a745 35% 65%, #ffc107 65% 90%, #dc3545 90% 100%);
  border-radius: 50%;
}

ベンダープレフィックス

linear-gradientは一応ベンダープレフィックスを併記するのがいいみたいです。

mozやwebkitでは方向ではなく開始位置を書く必要があります。

background: -moz-linear-gradient(開始位置, 開始色, 終了色);
background: -webkit-linear-gradient(開始位置, 開始色, 終了色);
background: linear-gradient(to 方向, 開始色, 終了色);

.linear1 {
  background: -moz-linear-gradient(top, #007bff, #fff);
  background: -webkit-linear-gradient(top, #007bff, #fff);
  background: linear-gradient(to bottom, #007bff, #fff);
}

画像にグラデーションを重ねる

画像にグラデーションを重ねるとオシャレですね。

色は透明度を調整するためにrgbaで指定します。

background-size:coverと指定すると、画像にぴったりはまってくれます。

background: linear-gradient(to 方向, 開始色, 終了色), url(画像のパス);
background-size: cover;

.cat_gradient {
  background: linear-gradient(to top, rgba(217, 175, 217, 0.7) 0%, rgba(151, 217, 225, 0.7) 100%), url(img/cat.jpg);
  background-size: cover;
}

文字の色をグラデーション

background-cliptext-fill-colorを使います。

color: 非対応の場合の文字色;
background: -webkit-linear-gradient(角度, 開始色, 終了色);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;

.text-gradient {
  color: #32bdeb;
  background: -webkit-linear-gradient(0deg, #32bdeb, #ff1493);			
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

LIMIT BREAK

ページの背景にグラデーション

bodyに対してbackground指定するだけやん...と思ったら意外と苦戦しました。

擬似要素とposition:fixedを使います。

body:before {
  content: "";
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background: 非対応の場合の背景色;
  background: linear-gradient(グラデーションの内容)
}

左メニュー下のスイッチを押してみてください。

まとめ

グラデーションはボタンや線の色にも応用できそうです。

ファ〇ナルファ〇タジーのメニュー画面はⅥが一番好きです!

この記事を書いた人
みやの
Web・DTP担当

Contact Us

ご意見、ご相談、料金のお見積もりなど、お気軽にお問い合わせください。

お問い合わせはこちら

TOP