Text Shadow Generator
Build layered text shadows visually and copy the CSS
Click a layer to edit it; earlier layers paint on top in the CSS output.
How to Use
- Start from a preset — Pick Subtle, Hard Outline, Neon Glow, Retro 3D, or Emboss to load a ready-made layer stack, or begin with the default single soft shadow.
- Select a layer — Click any layer in the list to edit it; the selected layer is highlighted and its values load into the editor below.
- Tune the layer — Adjust offset X/Y, blur radius, color, and opacity with the sliders; the preview and CSS output update on every change.
- Stack and reorder layers — Add layers for depth effects, then move them up or down. Earlier layers paint on top, which is how glows and 3D stacks get their look.
- Check both backgrounds — Toggle the preview between light and dark and drag the font-size slider to see how the shadow holds up at real sizes.
- Copy the CSS — Click Copy CSS and paste the
text-shadowdeclaration into your stylesheet. Zero-blur layers are emitted without the blur component, so the output stays clean.
Features
- Multi-layer editing — Add, remove, select, and reorder unlimited shadow layers with per-layer offset, blur, color, and opacity controls.
- Five hand-tuned presets — Subtle, Hard Outline, Neon Glow, Retro 3D, and Emboss give you proven starting points for common effects.
- Light/dark preview — A two-state background toggle plus a font-size slider shows the shadow the way users will actually see it.
- Clean CSS output — Layers are comma-joined in stacking order, colors emit as hex at full opacity and rgba() below it, and blur is omitted when zero.
- 100% client-side — Everything runs in your browser; no data ever leaves your device.
Use Cases
- Headline depth: Stack a few zero-blur layers in stepped offsets (the Retro 3D preset) to give hero titles a letterpress or vintage-poster feel.
- Glow effects: Use the Neon Glow preset for dark-mode landing pages, stream overlays, and game UIs — then tweak the hue to match your palette.
- Readable text on images: A subtle dark shadow behind white text keeps captions legible over photos without a heavy overlay.
- Skeuomorphic UI: The Emboss preset simulates pressed-in text on toolbars and buttons styled to look like physical panels.
Related Tools
- CSS Box Shadow Generator — Design layered box shadows with live preview.
- CSS Flexbox Generator — Design flexbox layouts visually and copy the CSS.
- CSS Gradient Generator — Build custom CSS gradients for your layouts.
Frequently Asked Questions
How is text-shadow different from box-shadow?
text-shadow applies the shadow to the glyph shapes of the text itself, not to the element's box. It also has no spread radius and no inset keyword — each layer is just an x offset, a y offset, an optional blur radius, and a color. If you need to shadow a whole card or container, use box-shadow instead.
Does the order of shadow layers matter?
Yes. The first shadow in the comma-separated list is painted on top of the later ones, so stacking order directly shapes the effect. In a neon glow, for example, the small, bright blur goes first and the wide, faint halo sits underneath it. Use the up/down buttons to reorder layers and watch the preview change.
Why can I toggle the preview between light and dark?
A text shadow's effect depends heavily on the background: a neon glow that pops on a dark page is nearly invisible on white, and an emboss effect needs a mid-tone background to read at all. Checking both light and dark previews keeps you from shipping a shadow that only works in one theme.