Skip to content
CSS box-shadowジェネレーター
Tools

CSS box-shadowジェネレーター

新着

多層のCSS box-shadowをプリセットとライブプレビューで作成。CSS・値・Reactスタイルを即コピー。

Presets
Background
Shape
Shadow layers

Select a layer above to edit it.

CSS output

Runs entirely in your browser. Nothing is uploaded.

CSSボックスシャドウをビジュアルに作成 — 試行錯誤なし

この無料CSSボックスシャドウジェネレーターは、コードエディタでの面倒な手作業をリアルタイムのビジュアルキャンバスに置き換えます。オフセット・ブラー・スプレッド・不透明度のスライダーを調整すると、プレビュー要素のシャドウが即座に更新され、コピーできるCSSがお好みの形式で下部に表示されます。データは一切アップロードされず、アカウントも不要で、すべての処理がブラウザ内でローカルに実行されます。

8種類の内蔵プリセットまたは空のレイヤーからスタートできます。複数のシャドウレイヤーを追加してリアルな奥行き効果を作り上げ、ダーク/ライト背景でコントラストを確認したら、出力形式を選択してください。CSSプロパティ宣言、シャドウ値のみ、またはReact対応のキャメルケースインラインスタイル文字列から選べます。このジェネレーターは、繊細なカードの浮き上がりからニューモーフィックな押し出し、ネオングロー効果まで幅広くカバーしています。

box-shadowの6つのパラメーターを理解する

オフセットXとYは要素に対するシャドウの位置を決めます。Xが正の値なら右へ、Yが正の値なら下へ移動します。負のオフセットは左または上へ移動し、上方照明のシャドウ効果に便利です。ブラー半径はエッジの柔らかさを制御します。ゼロにするとくっきりとした輪郭になり、大きくするほど自然な奥行きに見えるグラデーション状のフェードが生まれます。スプレッド半径はブラーを適用する前にシャドウを拡大・縮小します。負のスプレッドと大きなブラーを組み合わせると、シャドウが要素の自然なフットプリント内に収まり、リアルなカードシャドウの定番テクニックになります。

カラーは通常、中立的な浮き上がり感を出すために `rgba(0, 0, 0, 0.12)` のような半透明の暗い値を使用しますが、グロー効果には鮮やかな色合いも使えます。不透明度スライダーでカラーピッカーとは独立してアルファを微調整できます。インセットトグルはシャドウの方向を反転させ、ボーダーボックスの内側に描画することで、凹んだウェル、インデントされた入力フィールド、ボタンの押し下げ状態を作成できます。これは `filter: drop-shadow()` では実現できない機能です。

プロフェッショナルでリアルな奥行きを生む多重レイヤーシャドウ

単一の大きなシャドウは人工的に見えます — リアルな光ではなく、汎用的なフォトショップのドロップシャドウフィルターのように映ってしまいます。プロフェッショナルなUIでは、オフセットとブラーをほぼ2倍ずつ増やし、不透明度を半分に減らした3〜5層のシャドウを重ねます。このテクニックは光が光源から物理的に散乱する様子を模倣し、どのサイズや視聴距離でも自然に見えるシャドウを作ります。

このジェネレーターは最大8つの独立したレイヤーをサポートします。各レイヤーは独自のオフセット、ブラー、スプレッド、カラー、不透明度、インセットトグルを持ちます。各レイヤーの目のアイコンを使うと、レイヤーを削除せずに表示・非表示を切り替えて即座にビフォー・アフター比較ができます。Deepプリセットは3層のグラデーションスタックを示し、Floatingは要素がページ上に浮き上がって見える2つの補完的なレイヤーを使用し、MaterialはGoogleマテリアルデザインの多層エレベーション仕様を再現しています。

プリセット: カード、クリスプ、ニューモーフィック、グローなど

Soft cardプリセットはほとんど目立たない浮き上がりを生み出します — コンテンツと競合せずに白いカードをページから分離するのにちょうどよい浮き感です。Crispはブルーゼロのくっきりとしたエッジのシャドウで、ブルータリストやレトロなデザイントレンドで人気があります。MaterialはGoogleマテリアルデザインの多層シャドウ仕様を再現し、なじみのあるAndroid風の奥行きシステムを持つアプリに対応しています。

Neumorphic(ニューモーフィック)は左上に明るいハイライト、右下に暗いシャドウを組み合わせ、要素がマッチングサーフェスから押し出されたように見せます。Glow Blueはゼロオフセットの色付きシャドウが発光するボタンやヒーローアクセントを作る方法を示します — ブランドカラーに合わせて色を変えてください。Inset Wellはテキスト入力や押し下げ状態のような凹んだUI要素のインセットテクニックを示します。プリセットを読み込んでスライダーを調整し、あなたのデザインが必要とする方向に仕上げてください。

box-shadow vs filter: drop-shadow vs Figmaシャドウ — どれを使うべきか

box-shadowは要素の矩形ボーダーボックスを対象にします。filter: drop-shadow()は要素のアルファチャンネルのシルエットをトレースします — 透明なPNGやSVGカットアウトには正確ですが、インセットサポート、スプレッド半径、多層スタックが欠けています。すべての標準的なUI要素(カード、ボタン、モーダル、パネル)には `box-shadow` が適切なツールです。

FigmaとAdobe XDはどちらもシャドウデザインパネルを提供していますが、出力はデザインツールの値で、手動変換なしにCSSと互換性がない場合があります。このジェネレーターは有効なプロダクション対応CSSを直接生成し、変換ステップを排除します。Figmaの限定的な無料プランやAdobe XDのサブスクリプションモデルとは異なり、UtiloKitは完全無料で、インストールなしにあらゆるブラウザで動作し、デザインツールアカウントを必要とせずに複数の出力形式(CSS、値、React)を提供します。

パフォーマンス、プライバシー、3つのコピー形式

静的な `box-shadow` は一度描画されて安価にコンポジットされます — ほとんどのUIでパフォーマンスの懸念はありません。直接アニメーションさせると毎フレーム再描画が発生します。パフォーマンスの高い代替手段として、目的のシャドウを既に適用した `::after` 疑似要素を追加し、その要素に `transition: opacity` を設定します。GPUはシャドウを再描画せずに不透明度をコンポジットするため、再描画コストゼロでスムーズなアニメーションが実現します。

シャドウを調整したら、プロジェクトに必要な形式でコピーしてください。CSSプロパティはスタイルシート用、値のみはCSS変数やSCSSマップ用、ReactインラインスタイルはJSXの `style` プロパティやStyled Components用です。あなたの設定はサーバーに保存されたり、どこかに送信されることはありません — タブを閉じれば消えます。シャドウデザインを繰り返し調整したいときは、ページをブックマークしていつでも戻ってきてください。

デスクトップ、iPhone、Android、すべてのモダンブラウザで動作

このボックスシャドウジェネレーターは完全レスポンシブで、モダンブラウザを搭載したあらゆるデバイスで動作します。デスクトップでは、左にレイヤースタック、中央にライブプレビュー、右に生成コードという3カラムレイアウトになります。iPhoneAndroidでは、タッチ最適化されたスライダーとネイティブシステムカラーピッカーを使用する縦型の1カラムレイアウトに変化します。

すべてのコピーボタンはSafari 13.1以降、Chrome 66以降、Firefox 90以降、Edge 79以降でサポートされているWeb Clipboard APIを使用しています。つまり、回避策なしにモダンモバイルブラウザでコピー機能が動作します。アプリのダウンロード不要、アカウント作成不要、レート制限なし。URLをどのデバイスで開いても、すぐにデザインを始められます。

Frequently asked questions

CSSのbox-shadowとは何ですか?何をするプロパティですか?

CSSの `box-shadow` プロパティはHTML要素に1つ以上のシャドウ効果を追加します。各シャドウは最大6つの値で定義されます。オプションの `inset` キーワード、水平オフセット、垂直オフセット、ブラー半径、スプレッド半径、そしてカラーです。正の水平オフセットはシャドウを右に押し出し、正の垂直オフセットは下に押し出します。複数のシャドウはカンマで区切られ、前面から背面の順に描画されます。これは画像を使わずに、UIコンポーネントに視覚的な奥行き、エレベーション階層、グロー効果、ニューモーフィックスタイリングを追加するための主要なCSSメカニズムです。

CSSのbox-shadowの正しい書き方(構文)は?

完全な構文は `box-shadow: [inset] offset-x offset-y [blur-radius] [spread-radius] color` です。必須なのは `offset-x`、`offset-y`、`color` のみで、`blur-radius` と `spread-radius` は省略するとデフォルトの0になり、`inset` を省略すると外側のシャドウになります。典型的なカードシャドウは `box-shadow: 0px 4px 12px 0px rgba(0, 0, 0, 0.12)` のようになります。シャドウをカンマで区切れば無制限にスタックでき、前面から背面の順(最初に書いたものが上)に描画されます。このジェネレーターは `box-shadow:` プロパティ名を含む完全な宣言、または好みに応じて値のみを出力します。

ブラー半径とスプレッド半径の違いは何ですか?

ブラー半径はエッジの柔らかさを制御します。ゼロにすると要素の形状に正確に合った硬くくっきりとしたエッジになり、値が大きくなるほど徐々に柔らかく、より拡散したフェードになります。スプレッド半径はブラーを適用する前にシャドウ全体を拡大・縮小します。正の値は要素の境界を超えて拡大し、負の値は内側に縮小します。最もリアルに見えるシャドウは、適度なブラーと少し負のスプレッドを使用し、シャドウが広がりすぎずに要素のフットプリントに近い状態を保ちます。これがDeepとFloatingプリセットで使われているテクニックです。

CSSでインセット(内側)ボックスシャドウを作るにはどうすればよいですか?

シャドウ宣言の先頭に `inset` キーワードを追加します。`box-shadow: inset 0px 2px 6px rgba(0, 0, 0, 0.20)` のようになります。インセットシャドウは要素の後ろではなく、ボーダーボックスの内側に描画され、凹んだまたは押し込まれた外観を作ります。一般的な用途としては、入力フィールド(フォーカスの深さを表示)、トグルスイッチのトラック、押しボタンのアクティブ状態、エンボス加工されたテキストコンテナなどがあります。このジェネレーターには各レイヤーのコントロールパネルにインセットトグルがあります。有効にすると、プレビュー要素でシャドウが即座に内側に反転します。

1つの要素に複数のbox-shadowを重ねることはできますか?

はい。CSSでは1つの要素にカンマ区切りで任意の数のシャドウを指定できます。記述した順に描画され、最初のシャドウが最前面になります。複数のレイヤーを重ねることが、スムーズでリアルな奥行きを作るための重要なテクニックです。単一の大きなシャドウは人工的に見えますが、3〜5層のグラデーションレイヤーは光が物理的に散乱する様子を模倣します。このジェネレーターは最大8つの独立したレイヤーをサポートし、各レイヤーには独自のオフセット、ブラー、スプレッド、カラー、不透明度、インセットトグルがあります。目のアイコンで個々のレイヤーを表示・非表示に切り替え、削除せずに素早いビフォー・アフター比較ができます。

ニューモーフィックシャドウの作り方を教えてください

ニューモーフィズムは、ページと背景色が一致する要素に2つの対照的なシャドウを使います。1つは明るい(ほぼ白の)シャドウが左上を指し、もう1つは暗い(低い不透明度の黒)シャドウが右下を指します。これにより、要素が背景サーフェスから押し出されているように見えます。典型的なニューモーフィックの宣言は `box-shadow: -6px -6px 12px rgba(255,255,255,0.8), 6px 6px 12px rgba(0,0,0,0.15)` です。錯視を機能させるには、要素の背景色がページの背景色と完全に一致している必要があります。このジェネレーターのNeumorphicプリセットがすぐに使えるスターティングポイントを提供しています。プレビュー背景を「ソフトグレー」に切り替えると、コンテキストの中で確認できます。

グロー(光彩)エフェクトのbox-shadowを作るには?

オフセットをゼロにし、大きなブラー半径と色付きの値を使います。`box-shadow: 0px 0px 20px 4px rgba(59, 130, 246, 0.5)` のようになります。オフセットをゼロにすることで、グローがすべての方向に均等に放射されます。正のスプレッドはグローを要素からさらに遠ざけます。明るいコアのために小さなブラーと高い不透明度を持つ1層と、周囲のハローのために大きなブラーと低い不透明度を持つ1層の合計2層を組み合わせると、より説得力のある発光効果が生まれます。Glow Blueプリセットがこの2層アプローチを実演しています。カラーを任意の色相に変更して、カスタムアクセントグローを作成してください。

スムーズでリアルな多層シャドウを作るにはどうすればよいですか?

1つの大きなシャドウの代わりに、3〜5層を重ねます。各層でオフセットとブラーをほぼ2倍にしながら不透明度を半分に減らしていきます。例えば `0px 1px 2px rgba(0,0,0,0.06), 0px 4px 8px rgba(0,0,0,0.08), 0px 12px 24px rgba(0,0,0,0.06)` のようになります。このテクニックは光が点光源から物理的に散乱する様子を模倣し、どのズームレベルや表示解像度でも説得力のある見た目を保ちます。このジェネレーターのDeepとFloatingプリセットはまさにこの原則に基づいて構築されています。3層のグラデーションレイヤーが、あらゆるスケールで自然に見えます。

box-shadowとfilter: drop-shadow()の違いは何ですか?

`box-shadow` は常に要素の矩形ボーダーボックスに従います。要素が視覚的にどのように見えるかに関わらずです。`filter: drop-shadow()` は要素の実際のアルファチャンネルのシルエットをトレースします。これは透明なPNGカットアウトやSVGアイコンで、バウンディング矩形ではなく形状に沿ったシャドウが必要な場合に有用です。標準的なUIコンポーネント(カード、ボタン、モーダル、パネル)には `box-shadow` が正しいツールです。描画が速く、インセットモードをサポートし、スプレッド半径を受け付け、複数の重ねたレイヤーを使えます。`filter: drop-shadow()` は要素の透明な背景がシャドウの形状に重要な場合にのみ使用してください。

box-shadowはCSSレイアウトやクリック領域に影響しますか?

いいえ。`box-shadow` は通常のレイアウトフローの外側に描画される純粋な視覚効果です。兄弟要素を押しのけることも、スクロール可能なコンテンツ領域を増やすことも、要素の計算された幅、高さ、マージン、パディングに影響することも一切ありません。シャドウは要素のボックスを超えて視覚的に広がりますが、レイアウトエンジンには無視されます。つまり、密にパックされたグリッドに大きなシャドウを追加してもレイアウトが崩れません。ただし、シャドウがクリップされないように親コンテナに `overflow: visible` を追加したい場合があります。

ReactやTailwindの形式で生成されたCSSをコピーするにはどうすればよいですか?

シャドウを作成したら、ジェネレーターは3つの出力形式を提供します。<strong>CSSのコピー</strong>はどのスタイルシートにも使える完全なプロパティ宣言(`box-shadow: …;`)を提供します。<strong>値のコピー</strong>はシャドウ値のみを提供します。SCSS変数、CSSカスタムプロパティ値、またはTailwindの `extend.boxShadow` エントリとして便利です。<strong>Reactスタイル</strong>はJSXインラインスタイルオブジェクトやStyled Componentsのためのキャメルケース形式(`boxShadow: '…'`)を出力します。Tailwindの場合は、カスタムシャドウユーティリティクラスを作成するために `tailwind.config.js` の `theme.extend.boxShadow` に値を貼り付けてください。

このbox-shadowジェネレーターはcssgenerator.orgやcss-box-shadow.comより優れていますか?

専用のボックスシャドウツールのほとんどは単一レイヤーの生成のみを提供しています。例えばcssgenerator.orgは基本的なコントロールは提供していますが、プリセットライブラリも多層スタッキングもありません。css-tricks.comのリファレンスはドキュメントであり、インタラクティブなツールではありません。cssmatic.comのCSSジェネレーターは機能はしますが古くて広告が多い状態です。UtiloKitのジェネレーターはレイヤーごとの目のトグルを持つ最大8つの独立したレイヤー、最も一般的なシャドウデザインパターンをカバーする8つのキュレートされたプリセット(カード、クリスプ、マテリアル、ニューモーフィック、フローティング、ディープ、グロー、インセットウェル)、異なるフレームワーク向けの3つの出力形式、コントラスト確認のための完全なダーク/ライト背景トグルをサポートしています。すべて広告なし、データアップロードゼロです。

このツールはiPhoneやAndroidのスマートフォンでも使えますか?

はい。ボックスシャドウジェネレーターは完全レスポンシブです。iPhoneとAndroidでは、すべてのスライダーが適切なサイズのドラッグハンドルでタッチ対応になっています。ライブプレビュー要素はモバイル画面に合わせてスケーリングされます。カラーピッカーはモバイルブラウザでネイティブシステムカラーピッカーを使用します。デスクトップの3カラムレイアウトは狭い画面ではクリーンな縦型1カラムレイアウトに変化します。すべてのコピーボタンはiOSとAndroidの両方でSafari、Chrome、Firefoxがサポートするウェブクリップボードアプリプログラミングインターフェイスを使用します。アプリのダウンロードは不要で、アカウントも必要ありません。URLを開けばすぐに使い始められます。