Visual Iteration
Drag sliders to change offset, blur, and spread in real time instead of editing magic numbers in a text file, saving the back-and-forth between code editor and browser DevTools on every tweak.
500+ fast, free tools. Most run in your browser only; Image & PDF tools upload files to the backend when you run them.
Tune blur, spread, offsets, color, and inset shadows with an instant CSS preview.
Box shadows are one of the most effective ways to communicate depth and hierarchy in UI design, but writing them by hand means juggling four numeric values, an optional inset keyword, and an RGBA color — all in one declaration. The Box Shadow Generator lets you dial in offset, blur, spread, and opacity through sliders, so you see the result before committing a single character to your stylesheet. Stack multiple shadow layers to mimic realistic ambient and key lighting, the same technique used in Material Design elevation scales. Inset mode flips the shadow inward for pressed button states and recessed input wells. The color picker includes alpha control so you can build soft, photorealistic shadows without harsh dark borders. Once satisfied, copy the vendor-clean declaration straight to your CSS or design token file.
Drag sliders to change offset, blur, and spread in real time instead of editing magic numbers in a text file, saving the back-and-forth between code editor and browser DevTools on every tweak.
Stack a tight key shadow with a diffuse ambient shadow to mimic natural lighting on cards and modals. Multi-layer shadows look far more realistic than a single heavy declaration and match Material Design elevation conventions.
Switch to inner shadows instantly to style pressed button states, inset form fields, or recessed panels. The same sliders control the inset geometry, so you iterate just as quickly as on outer shadows.
Copy clean values into a design-system elevation scale like --elevation-1 through --elevation-4. Consistent shadows across components become a repeatable token rather than per-component guesswork.
The integrated color picker exposes both hue and opacity so you can keep shadows soft and translucent. Lower alpha values read more naturally on both light and dark surfaces than fully opaque black shadows.
One click copies the complete box-shadow declaration with no vendor prefixes needed in modern browsers. Paste directly into your stylesheet, Tailwind config, or CSS-in-JS theme object without editing.
Input: x:0, y:2, blur:8, spread:0, rgba(0,0,0,0.12) stacked with y:1, blur:3, rgba(0,0,0,0.08)
Output: box-shadow: 0 2px 8px rgba(0,0,0,0.12), 0 1px 3px rgba(0,0,0,0.08);
Input: x:0, y:24, blur:48, spread:-12, rgba(0,0,0,0.25)
Output: box-shadow: 0 24px 48px -12px rgba(0,0,0,0.25);
Input: inset enabled, x:0, y:2, blur:4, spread:0, rgba(0,0,0,0.2)
Output: box-shadow: inset 0 2px 4px 0 rgba(0,0,0,0.2);