このツールとは?
box-shadowは要素の背後(または内側)に影を描画するCSSプロパティです。手書きすると水平オフセット・垂直オフセット・ぼかし半径・広がり半径・色という最大5つの値を順番通りに書く必要があり、さらにinsetというオプションのキーワードもあるため、最初は順序を間違えたり、影が薄すぎたり濃すぎたりしがちです。
このツールならスライダーを動かすだけ——ライブプレビューボックスで影の変化を確認しながら、気に入ったら正確なCSSをコピーするだけです。カラーピッカーと不透明度スライダーを組み合わせることで、適切なrgba()の値が自動生成されます。半透明の影のほうが完全に不透明な影より自然に見えることが多いためです。
なぜこれを使うのか?
- どのコントロールを調整しても即座にプレビューが更新——コードを確定する前に正確な影を確認できます。
- オフセットX/Y、ぼかし、広がり、色、不透明度をすべて一箇所で完全にコントロールできます。
- ワンクリックでinsetを追加し、浮いたドロップシャドウではなく「押し込んだ」凹んだ見た目にできます。
- 選んだ不透明度で色がすでにrgba()に変換された、そのまま貼り付け可能なCSSを出力します。
- すべてブラウザ内で完結——設定した内容はどこにもアップロードされません。
- 無料、登録不要、モバイルでも動作します。
使い方
- オフセットXとYを設定して影の位置を決めます——正の値は右/下、負の値は左/上に移動します。
- ぼかし半径を上げると影の端が柔らかくなり、広がり半径を上げると影が要素自体より大きくなります。
- 色を選び、不透明度を調整します——現実的な影の多くは純粋な黒ではなく、15〜40%程度の不透明度を使います。
- 影を要素の背後ではなく、ボーダーの内側に表示したい場合は「内側の影 (inset)」にチェックを入れます。
- 生成されたCSSをコピーして、スタイルシートに貼り付けます。
例
入力
オフセット: 0px、10px · ぼかし: 20px · 広がり: 0px · 色: 黒、不透明度35%出力
box-shadow: 0px 10px 20px 0px rgba(0, 0, 0, 0.35);水平方向のオフセットなしで要素の真下に柔らかい影がつく、カードやボタンで最もよく使われる影のスタイルのひとつです。
単一の影 vs 重ねた影
このツールは単一の影レイヤーを生成します。これは実際のユースケースの大部分——ボタン、カード、モーダル、ドロップダウンではほぼ常に1つの影しか使わない——をカバーしています。CSSではカンマ区切りで同じ要素に複数の影を重ねることもでき、より凝った奥行き効果(例えば深く濃い影の上に柔らかく広い影を重ねる)を作れますが、これは手動で追加する応用的な調整です。ここで1つ影を生成し、その行を複製して2つ目の値を調整し、カンマでつなげてください。
よくあるbox-shadowのパターン
- 控えめなカードの浮き上がり:小さいオフセット(0〜4px)、適度なぼかし(8〜16px)、黒10〜20%の不透明度。
- 浮き上がったモーダル/ドロップダウン:大きめのオフセット(4〜10px)とぼかし(20〜30px)、20〜35%の不透明度でより強い浮遊感を演出。
- 押し込まれた/内側のボタン:insetをチェックし、小さめのオフセットと適度なぼかしで、浮き上がりではなくへこみに見えるようにします。
- カラーの光彩:黒の代わりにブランドカラーを選び、不透明度を40〜60%に上げ、広がりを少し増やしてボタン周りに柔らかい光彩効果を出します。
- シャープ/ハードな影:ぼかしと広がりを両方0にすることで、柔らかい影ではなく実線のオフセットシルエットになります。
角丸との組み合わせ
影と角丸は常にセットで使われます——カード、ボタン、モーダルはほぼ必ず両方を組み合わせています。Border Radius ジェネレーターで同じ要素の角を丸め、生成された2つのCSS宣言を一緒に適用してみてください。
よくある質問
ぼかしと広がりの違いは何ですか?
ぼかし半径は影の端を柔らかくします——値が大きいほど、より徐々にフェードアウトします。広がり半径はぼかし処理の前に影のサイズを変更します——正の広がりは影を要素より全方向に大きくし、負の広がりは縮小します。日常的な影のほとんどはぼかしを使い、広がりは0のままにします。
影に単純な16進数カラーではなくrgba()を使うのはなぜですか?
完全に不透明な影は硬く不自然に見えます——現実の影は常にある程度透明で、背後にあるものがわずかに透けて見えます。rgba()を使えばこの透明度を直接設定できるため、このツールは常に純色の16進数ではなくアルファ値付きの色を出力します。
insetキーワードは何をしますか?
insetがない場合、影は要素のボーダーの外側に描画され、要素がページの上に浮いているように見えます。insetを付けると影はボーダーの内側に描画され、要素が押し込まれた/へこんだように見えます。ボタンのアクティブ/押下状態や入力欄でよく使われます。
同じ要素に複数の影を重ねられますか?
はい——CSSのbox-shadowはカンマ区切りのリストを受け付け、ブラウザは指定された順序でレンダリングします(最初の影が一番上)。よくあるテクニックとして、狭く濃い影と広く柔らかい影を重ねることで、単体よりリアルな奥行きを表現します。
box-shadowはレイアウトに影響しますか、それとも見た目だけですか?
見た目だけです——ぼかしや広がりの値が大きくても、box-shadowが要素自体のサイズや周囲の要素の位置に影響することはありません。影が視覚的に切れている場合は、影の値ではなく親要素のoverflow: hiddenを確認してください。