落ち着いたヒーロー用グラデーション
.hero { background: linear-gradient(135deg, #6c8cff 0%, #b18cff 100%);}2色の斜めグラデーション。インディーSaaSのヒーローでよく見る定番ルックで、目に優しくテキストとも相性が良い組み合わせです。
ライブコード出力付きで CSS グラデーションをビジュアルに設計。
最終更新
background: linear-gradient(135deg, #b18cff 0%, #5ac8c8 100%);CSSグラデーションジェネレーターは、CSSの linear-gradient・radial-gradient・conic-gradient を視覚的に編集するためのツールです。手作業でカラーストップを書く必要はなく、トラック上で色をドラッグし、プレビューが更新されるのを確認しながら、そのままスタイルシートに貼り付けられるCSSをコピーできます。
モダンなUIでグラデーションは至るところに登場します。ヒーローセクション、カードのオーバーレイ、ボタンのステート、グロウエフェクト、ダークモードの微妙な色味、ローディングスケルトン、装飾的なボーダーなど。手書きで書ける力があれば作業は速くなりますが、アイデアを試行錯誤するフェーズではビジュアルジェネレーターに勝るものはありません。
CSSのグラデーションには3種類あります。*Linear* は任意の角度で直線方向に色が流れるタイプ。*Radial* は中心点から円や楕円状に放射されるタイプ。*Conic* は時計の針のように中心を軸として色が回るタイプです。それぞれ得意な用途があり、1つの背景に複数のグラデーションを重ねて使うこともできます。
oklch のようなモダンな色空間を使うと、rgb や hsl よりも知覚的に均一で滑らかなグラデーションになります。直線的に色を流すなら linear、円形にフェードさせるなら radial、中心を軸に色を回したいなら conic を選びます。
linear なら角度を度数で指定します(CSSでは 0deg が下から上方向です)。radial と conic では中心位置を指定します。
好きな数だけ色を追加できます。各ストップをトラック上でドラッグして位置を調整します。同じ位置に2つ置けばハードエッジになります。
幅広のヒーロー、カード、ボタンを切り替えて、アスペクト比の違いでグラデーションの見え方がどう変わるかを確認します。
そのまま使える background 宣言をコピーして、自分のスタイルシートに貼り付けるだけです。
3つのグラデーション関数と、その中で使うパーツのまとめ。詳しい仕様はMDNを参照: linear-gradient、radial-gradient、conic-gradient。
| 関数・要素 | 役割 | 例 |
|---|---|---|
linear-gradient | 直線方向に色を流す | linear-gradient(135deg, #6c8cff, #b18cff) |
radial-gradient | ある点から放射状に色を広げる | radial-gradient(circle at 30% 20%, #fff, #000) |
conic-gradient | 中心を軸に色を一周させる | conic-gradient(from 0deg, red, yellow, red) |
repeating-linear-gradient | ストライプパターンをタイル状に繰り返す | repeating-linear-gradient(45deg, #000 0 10px, #fff 10px 20px) |
| カラーストップ | 色+(オプションの)位置 | #6c8cff 25% |
| ハードストップ | 同じ位置に2回置いてシャープな境界を作る | #000 50%, #fff 50% |
| 複数グラデーション | 1つの要素に重ねて指定できる | background: g1, g2, g3; |
.hero { background: linear-gradient(135deg, #6c8cff 0%, #b18cff 100%);}2色の斜めグラデーション。インディーSaaSのヒーローでよく見る定番ルックで、目に優しくテキストとも相性が良い組み合わせです。
.card { background: radial-gradient(circle at 30% 20%, rgba(255,255,255,0.15), transparent 40%), #1f2230;}単色の上に半透明のラジアルハイライトを重ねて、柔らかな光源を擬似的に表現するテクニック。ダークモードのカードに特に効きます。
.stripes { background: repeating-linear-gradient( 45deg, #1a1a1a 0 12px, #2a2a2a 12px 24px );}同じ位置に2つのストップを置けば境界がシャープになります。それを repeating-linear-gradient でくるんでやれば、パターンが繰り返しタイル状に並びます。
0deg が下から上方向だということを忘れる(多くのデザインツールの「0°=右」とは違います)。background または background-image プロパティの値として linear-gradient・radial-gradient・conic-gradient のいずれかを指定します。各関数は方向(または中心位置)とカラーストップのリストを引数に取ります。background-position をアニメーションして動かす、2つのグラデーションレイヤーをopacityで切り替える、カラーストップに使ったCSSカスタムプロパティをアニメーションする、といった方法があります。oklch のような知覚的な色空間に切り替える、ごく薄いノイズをディザリングとして重ねる、といった対処法があります。background-color をフォールバックとして置いておくと安心です。