Animated to-do list checkbox that transforms into a strikethrough line that crosses out the task text when checked

Animated Striking Checkbox

demo & code

This is an Animated Striking Checkbox. It transforms a standard checkbox into a highly expressive UI element that physically becomes the strikethrough line for its associated label. Its function is to provide satisfying, immediate feedback for to-do list items, visually linking the action of checking a box to the result of striking out the text.

Level: Intermediate
Browser Support [As of Mar 2026]: Chrome 60+, Edge 79+, Firefox 55+, Safari 11+
Minimalist toggle switch morphing from a sun icon to a moon icon using pure CSS transitions and the :has selector

Pure CSS Morphing Dark Mode Toggle

demo & code

This Pure CSS Morphing Dark Mode Toggle is a sophisticated implementation of a theme switcher that eliminates the need for JavaScript. By utilizing the modern CSS :has() relational selector and complex transform logic, the component morphs a sun icon into a moon icon seamlessly. It offers a premium feel through the use of custom cubic-bezier timing and modular CSS construction.

Level: Intermediate
Browser Support [As of Jan 2026]: Chrome 105+, Edge 105+, Safari 15.4+, Firefox 121+
Black 'Submit' button on a gray background; on hover, an arrow icon slides out from the right; on click, it transforms into a spinning loader

Micro-Interaction Loading Button

demo & code

This Micro-Interaction Loading Button demonstrates how to pack multiple feedback states into a single UI element without cluttering the interface. It starts as a clean “Submit” button. Hovering reveals a directional arrow, hinting at action. Clicking triggers a seamless loading sequence where the arrow transforms into a spinner, finally resolving into a checkmark to confirm success.

Level: Intermediate
Browser Support [As of Jan 2026]: Chrome 49+, Edge 15+, Firefox 43+, Safari 10+
An animated button that morphs from a rectangle with text into a circle with a bouncing up arrow.

Up Arrow

A rectangular button smoothly shrinks into a circle, the text fades out, and an upward-pointing arrow begins to cyclically rise within it.

See the Pen Up Arrow.

Gooey Clock

Gooey Clock

A functional clock face featuring a morphing, lava-lamp-like background created by filtering overlapping SVG shapes.

See the Pen Gooey Clock.

Transaction List with View Transitions

Transaction List with View Transitions

A seamless master-detail interface leveraging the native View Transitions API to animate structural DOM changes without external libraries.

View Transitions: Playlist Header

View Transitions: Playlist Header

A music player UI demo showcasing the power of the View Transitions API. By assigning unique view-transition-name properties to key elements (cover, title, tracks), the browser orchestrates a complex morphing animation between “expanded” and “mini-player” states, fine-tuned with custom CSS durations and delays.

Expanding Social Share Button

Expanding Social Share Button

A smooth, morphing circular button that expands on click to reveal three link items, utilizing complex CSS transitions, transition-delay, and a Pug template structure for dynamic content generation.

See the Pen Expanding Social Share Button.

Interactive Menu Icon Animation

Interactive Menu Icon Animation

This example shows how a Toggle Class and CSS Custom Properties orchestrate complex transitions (with varied easing and delay for each line) to create a professional interactive icon.

See the Pen Interactive Menu Icon Animation.

CSS Morphing Effects with View Transitionsexternal link

Leverage the modern View Transitions API to seamlessly morph any element (e.g., button to dialog) using the view-transition-name property and custom CSS keyframes like flip-in.

Centaur Sliderexternal link

Slider with visual centaur transformation. As slider moves, human-to-horse ratio changes: individual body parts appear/disappear via opacity and scale toggles. Positioning via :has(input[value]). SVG sprite with named parts.

Search Form With Animated Search Button

Search Form With Animated Search Button

This is a fully interactive search bar. On :hover, a coordinated set of CSS transitions transforms the icon’s geometry - from a circle to a rounded rectangle - while its pseudo-elements reconfigure from a handle into a cross, creating a fluid and polished UI element.

Button Interaction

Button Interaction

A UI element “morphing” technique using CSS transition. The smooth change of width, height, and border-radius creates a transformation effect, while transform: rotate() adds dynamism. JavaScript is used only as a trigger.

See the Pen Button Interaction.