animation‑composition Demo - Online Blend Multiple Animations
See how `animation‑composition: replace, add, accumulate` works by layering animations on the same property. Understand the spec.
UD5 Toolkit
Complete reference of all CSS properties that can be animated with transitions & keyframes
No matching properties found
Try adjusting your search or filter criteria
transition) and CSS animations (@keyframes). The interpolation type varies—numeric values are mathematically interpolated, colors are blended in a specific color space, and discrete properties jump between values at keyframe boundaries. Properties like opacity, transform, color, and width are classic examples.
display (traditionally—though transition-behavior: allow-discrete now enables it in modern browsers), content, cursor, direction, float, font-family (discrete jump), overflow, position, text-align, white-space, and most layout-defining properties. These properties either have no meaningful intermediate states or would cause reflow issues during interpolation. Always check this cheatsheet or MDN documentation before building animations.
visibility: visible → visibility: hidden flips at exactly the 50% mark in a keyframe animation—there's no "half-visible" state. Discrete properties work in @keyframes animations but not in traditional CSS transitions (unless you use transition-behavior: allow-discrete, a newer CSS feature). Examples include visibility, mix-blend-mode, paint-order, and scroll-behavior.
display is not animatable and cannot be used in transitions. However, modern CSS (Chrome 117+, Edge 117+, Safari 18+) now supports transition-behavior: allow-discrete, which enables discrete properties like display to participate in transitions alongside @starting-style. Even with this, the animation is a discrete jump at the transition's endpoint, not a smooth fade. For smooth show/hide effects, it's still recommended to animate opacity and visibility with a transition, and optionally set display after the transition ends.
opacity (fade effects), transform (translate, scale, rotate for movement and scaling), color / background-color (color transitions), box-shadow (shadow depth effects), width / height (size changes), border-radius (shape morphing), filter (blur, brightness effects), and margin / padding (spacing adjustments). These properties are GPU-accelerated in many cases (especially opacity and transform), making them ideal for smooth 60fps animations.
color-interpolation-filters or by using color functions like oklch() and oklab() which interpolate perceptually. You can also use the @color-profile at-rule for advanced color management. Properties like color, background-color, border-color, box-shadow (color part), and caret-color all use color interpolation.
transition) animate a property from its current value to a new value when a state change occurs (e.g., :hover, class toggle). They're reactive—triggered by an event. CSS Animations (@keyframes + animation) allow you to define complex multi-step sequences that can loop, auto-play on page load, and control intermediate states at precise percentages. Animations support discrete properties (visibility jumps at keyframes), while transitions traditionally only support interpolable properties (unless transition-behavior: allow-discrete is used). Use transitions for simple state changes and animations for complex choreography.
See how `animation‑composition: replace, add, accumulate` works by layering animations on the same property. Understand the spec.
Create CSS animations and transitions without coding. Define keyframes, easing, and duration. Copy the @keyframes and animation code instantly.
Create a 'drawing' effect for any SVG path. Adjust speed and delay. Copy the CSS and SVG code. No JS needed.
Design a layout where nested grids share track sizes with their parent via subgrid. Copy the complete CSS.
Create a pure CSS scroll progress indicator using animation‑timeline: scroll(). No JavaScript. Copy the complete code.
Paste your CSS and see warnings for properties that have limited browser support. Links to CanIUse. Modernize safely.
Limit browser gestures on an element: pan‑x, pinch‑zoom, manipulation. Draw on a canvas to test. Mobile dev helper.
Create complex linear gradients with any number of color stops, exact angles, and length units. Live preview and CSS code.
Style underlines, overlines, and strike-throughs with colors, wavy styles, and thickness. Modern CSS text‑decoration.
Design a button or card that glows on hover. Adjust shadow color, spread, and transition. Copy the CSS. Rich UI.
Create a realistic letterpress (debossed) text effect using CSS text‑shadow and background. Adjust depth and light direction. Copy code.
Generate a subtle noise/grain texture as a CSS background pattern. Adjust opacity and size. For that film look.
Create a customizable checkerboard or grid background using pure CSS gradients. Adjust cell size and colors. Copy the code.
Upload two images and apply CSS blend modes (multiply, screen, overlay, etc.). See the result and copy the filter CSS. Pure frontend.
Add print styles like removing backgrounds, adding page breaks, setting margins. See print preview instantly.
Create a pure CSS countdown timer with a flipping number effect. Adjust duration and style. No JavaScript needed for display.
Create a glowing or rotating border animation around an element. Copy the CSS keyframes. Pure CSS magic.
Create a custom HTML/CSS progress bar with percentage, colors, and animation. Copy the code. Modern UI element.
Design a realistic neon sign text with multiple layers of glow. Copy the CSS and HTML. Perfect for headers.
A replica of the famous Flexbox Froggy game: solve alignment puzzles by writing CSS. Progress saved locally. Fun frontend learning.
Fetch a website's CSS and extract :root custom properties (‑‑color) to reveal its design token palette. For learning and inspiration.
A customisable Matrix‑style digital rain animation. Adjust speed, characters, and colors. Fullscreen mode for ambiance.
Paste a Kanji and watch it drawn stroke by stroke with numbered sequence. Excellent for learners. Static data set.
Recreate the target CSS linear gradient by adjusting stops and colors. A unique game for front‑end developers to master gradients.
Paste Lottie JSON code or upload a .json file and see the animation play. Control speed and loop. Perfect for developers.
Browse and search all Font Awesome 6 icons with preview, class name, and unicode. Copy the HTML snippet. Perfect for web developers.
Create text with a gradient fill using CSS background-clip. Configure colors and direction. Copy the code. Works in modern browsers.
A complete, searchable list of all 140+ named HTML/CSS colors with their hex codes and color previews. Click to copy code. Essential web reference.
Visually experiment with Flexbox container and item properties. See the layout update in real time and copy the CSS. Learn by doing, fully interactive.
Minify JavaScript and CSS code to reduce file size for production. Remove whitespace and comments instantly. Run locally, your code stays private.