CSS Hover Effects — Underlines, Lifts and Fills
Generate a hover effect that animates cleanly, with the reduced-motion guard included.
Every effect here animates only transform and opacity, which the browser composites without laying out or repainting — the difference between a smooth hover and a janky one is almost always which property you animated. Each recipe also fires on :focus-visible as well as :hover, because a hover-only affordance does not exist for keyboard users and does not exist on touch at all. The sliding underline uses scaleX with a shifting transform-origin so it enters from one side and leaves from the other.
Runs in your browser- Privacy
- Runs entirely in your browser — nothing is uploaded
- Cost
- Free, unlimited, no sign-up
Frequently asked questions
Why animate transform instead of width or top?
What happens to hover effects on a phone?
Why does the underline slide in from one side and out the other?
How to use the css hover effect generator
- 1Choose the effect.
- 2Pick the accent.
- 3Set the duration.
- 4Set the distance.
- 5The result appears immediately — copy or download it.
Embed this tool
Put the working css hover effect generator on your own site. It runs in your visitors' browsers exactly as it does here — free, no account, nothing uploaded.
Share this tool
Related tools
Last updated
More css generators