Type a tool name, for example "keyword density" or "transcript".
Build CSS box-shadow visually with live preview. Supports multiple layers, inset, and one-click copy.
Presets
Shadow Layers
Live Preview
A CSS box shadow generator lets you design a box-shadow visually and copy the finished CSS. This free tool gives you sliders for offset, blur, spread and opacity, a color picker, an inset switch, stackable layers and nine presets, so you see the result on a live preview before it goes into your stylesheet.
The box-shadow property draws one or more shadows around the frame of an element. It follows the element's rectangle and its rounded corners, so a box with a large border-radius gets a shadow with matching curves.
A single shadow is written as a list of values in this order: an optional inset keyword, horizontal offset, vertical offset, blur radius, spread radius and color. For example, box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.25); is a soft dark shadow pushed 4 pixels right and 4 pixels down.
You can stack several shadows by separating them with commas. The first shadow in the list is painted on top. Box shadows do not change the size or position of an element, so adding one never shifts the rest of your layout.
You build a shadow by moving sliders and reading the code that updates beneath the preview. Follow these steps.
| Control | Range | What it changes |
|---|---|---|
| Horizontal Offset | -100 to 100px | Left or right position |
| Vertical Offset | -100 to 100px | Up or down position |
| Blur Radius | 0 to 100px | Edge softness |
| Spread Radius | -50 to 50px | Shadow size |
| Opacity | 0 to 100% | Alpha of the color |
One of the most common requests is a shadow that appears only along the bottom edge. A plain offset shadow leaks onto the sides, but a negative spread pulls the sides back in.
Set Horizontal Offset to 0, Vertical Offset to 10, Blur Radius to 15, Spread Radius to -5 and Opacity to 30, with the color left at black. The tool outputs box-shadow: 0px 10px 15px -5px rgba(0, 0, 0, 0.3);.
Here is why it works. The shadow starts as a copy of the box, shrinks by 5px on every side because of the negative spread, then shifts down 10px. The left and right edges stay hidden behind the box, and only the bottom shows. Switch the preview to Dark bg and you will see how faint a black shadow becomes there, which is a signal to raise opacity or pick a glow instead.
Neumorphism needs two layers on a soft, mid-light background. Make layer one dark: offset 8 and 8, blur 16, black at about 20% opacity. Click Add Layer and make layer two light: offset -8 and -8, blur 16, white at about 80% opacity. The pair makes the box look pushed out of the surface. The Neumorphism preset gives you this idea in one click, and you can adjust it from there.
The Live Preview and the Generated CSS box always match, so judge the shadow by eye first and copy the code second. Use the checks below to decide whether it needs another pass.
For realistic depth, stack two or three layers: a tight, darker shadow for contact and a wide, faint shadow for ambient light. The Elevated preset follows this idea, and Add Layer lets you extend it.
Anyone who styles cards, buttons or inputs can save time by seeing a shadow before writing it. Typical situations include:
Once the shadow is done, you can pair it with other generators. Try a CSS gradient generator for the box background, or a text shadow generator for the headline inside it. For motion, a CSS animation builder can fade a shadow in on hover.
Good shadows are subtle, consistent and tested on the real background. A few habits prevent most problems.
Pick a single light source, usually from the top, and use the same positive vertical offset everywhere. Mixed directions across cards make a page feel unfinished.
The tool writes the color as rgba from your color and opacity, so the shadow blends with whatever sits behind it. A fully opaque black shadow looks heavy on almost any design.
A shadow that looks perfect on white can disappear on blue or gray. Cycle through all four preview backgrounds before copying the code.
The box-shadow property accepts a color, not a gradient. If you search for a gradient shadow, the usual workaround is to stack several colored layers or place a blurred gradient element behind the box.
Box-shadow wraps the rectangle of the element. The CSS drop-shadow filter follows the visible shape, so it suits transparent PNGs and icons. For cutout shapes, you may want to combine a drop-shadow filter with a clip-path shape, because box-shadow gets clipped away by clip-path.
Very large blur values on hundreds of elements, or shadows that animate constantly, can slow scrolling on low-end devices. Keep blur modest and animate opacity or transform instead when you can.
This tool produces the box-shadow declaration only. It does not write the full rule for your element, so you still add the selector, size and border-radius yourself. The output is plain CSS with pixel units and an rgba color. If your project uses a utility framework or a preprocessor, you will paste the values into that format by hand.
Offsets are limited to 100px, blur to 100px and spread to 50px, which covers nearly all interface work. Shadows are also drawn outside the element box, so a parent with overflow hidden will cut them off. If a shadow seems to vanish in your page, check the parent's overflow first.
After pasting the code, run your stylesheet through a CSS formatter to keep it tidy, and compress it for production with a CSS minifier. You will find more helpers in the web developer tools collection.
Design your shadow now: pick a preset, adjust the sliders, check all four backgrounds and click Copy CSS. You will have clean, ready-to-paste box-shadow code in under a minute.
Your report has been submitted. We will look into this issue.
A VPN changes your network exit. It does not guarantee anonymity.
Themes, plugins, code, video, audio, graphics & more from 90,000+ authors.
Web Development
Design & Media
Unlimited Access
Explore Envato Market