Design & SVG

Shadow Elevation System

Generate a layered set of box-shadow elevation levels for cards, modals and menus, tuned by color, opacity and growth rate.

How to use the shadow elevation generator

  1. Set your levels and colorChoose how many elevation steps you need and a base shadow color.
  2. Tune opacity and growthAdjust how strong and how quickly the shadows scale up between levels.
  3. Copy the CSSPaste the generated classes and apply them to your UI components.

Designing a consistent elevation system

An elevation system gives every floating UI surface, like cards, dropdowns and dialogs, a shadow depth that matches its visual importance, so users can read layering at a glance instead of every component inventing its own shadow.

Vertical offset

Each level's shadow sits further below the element, growing at the rate you set.

Blur radius

Blur increases alongside the offset, so higher levels get a softer, more diffuse shadow.

Opacity taper

Opacity gently decreases at higher levels so large shadows don't look too heavy.

Reusable classes

Each level exports as its own CSS class, ready to apply to any component that needs that depth.

Shadow Elevation System Generator FAQ

What is an elevation system?

An elevation system is a consistent set of shadow styles representing how far each UI surface appears to float above the page, with higher levels using larger, softer shadows.

How does the growth rate affect the shadows?

It controls how quickly the vertical offset and blur radius increase from one level to the next, so higher growth rates create more dramatic differences between levels.

Why does opacity decrease at higher levels?

Larger, more spread-out shadows can look too heavy at full opacity, so this tool gently reduces opacity as levels grow to keep every level looking natural.

Can I use a color other than black?

Yes, pick any base color and the generated shadows will use it, which is useful for shadows that need to match a colored background.

How do I use the generated CSS?

Copy the output and paste the classes into your stylesheet, then apply a class like elevation-2 to any element that needs that level of depth.

Try other free tools

More handy tools from My Panda Toolbox.