scroll‑state Container Query Demo - Online Test stuck/snapped
Experiment with scroll‑state container queries to style elements when they are stuck, snapped, or overflowed. Experimental.
UD5 Toolkit
Interactive demo of animation-timeline,
scroll-timeline & view-timeline
view-timeline and animation-range: entry.view-timeline and inner
elements animate on entry./* Scroll-driven animation CSS */
animation-timeline: scroll() or
animation-timeline: view(), animations advance as the user scrolls, creating
performant, declarative scroll-linked effects without JavaScript.
@supports (animation-timeline: scroll()) for progressive enhancement.
scroll() ties animation progress to the scroll position of a container (0%–100% of
scrollable range). view() ties animation progress to an element's visibility within a
scrollport — the animation plays as the element enters, is contained within, or exits the viewport.
Named timelines (scroll-timeline, view-timeline) offer more control.
animation-range controls which portion of the timeline the animation covers. For scroll
timelines, use percentages like 20% 80%. For view timelines, use keywords:
entry, exit, contain, cover combined with
percentage offsets — e.g., entry 0% entry 100% plays the animation while the element
enters the viewport.
scroll-timeline: --name on different
scroll containers, and assign different elements to each timeline using
animation-timeline: --name. Each timeline operates independently.
scroll-timeline shorthand property on a scroll
container: scroll-timeline: --my-timeline block;. Child elements then reference it via
animation-timeline: --my-timeline;. This allows multiple elements to share the same
timeline and is more flexible than anonymous scroll().
animation-timeline and animation-range computed values. The
Rendering tab can highlight scroll-snap and scroll-driven animation regions.
transform and opacity properties. Avoid animating properties that trigger
layout (like width, height, or top).
@supports (animation-timeline: scroll()) { ... } to wrap scroll-driven animation
rules. Inside a @supports not block, provide a static fallback. You can also use a
JavaScript polyfill or the ScrollTimeline Web API for programmatic fallbacks.
scroll-timeline: --name inline; (or x) for horizontal
scroll containers. The axis parameter — block (vertical/y) or inline
(horizontal/x) — determines which scroll axis drives the animation timeline.
Experiment with scroll‑state container queries to style elements when they are stuck, snapped, or overflowed. Experimental.
Browse a curated set of button hover animations. See each effect live and copy the CSS. Minimalist collection.
Hover over tiles to see every CSS cursor value in action. Quick visual reference for choosing the right UI feedback.
See every touch point with coordinates, radius, and force on your mobile device. Debug gestures with live overlay.
Hover over tiles to see every CSS cursor value in action. Quick visual reference for choosing the right UI feedback.
Write a fragment shader and see the result rendered on a full‑screen quad. For WebGL learners. Local compilation.
Unified input demo: see pressure, tilt, and type from any pointer. Compare pointerType values. Essential for drawing apps.
Generate a random 4‑panel comic sketch with simple stick figures and funny dialogue. Just for laughs. Canvas.
Flip a virtual coin to make a decision or settle a dispute. Realistic animation and fair random outcome. Simple, fast, and always available.
Click to get a randomly generated unique abstract icon (geometric pattern). Download as SVG. For placeholder avatars and designs.
Play the classic Snake game inside your browser. Arrow keys to move, eat the apple, grow longer. High score tracked locally.
Get a catchy, Product Hunt‑style tagline for your side project. Like 'Uber for left shoes'. Instant creativity.
Pick a language and get a random useful travel phrase with pronunciation. For fun language learning. Static data.
Enter a hex color and hear a tone mapped to its hue. Explore the connection between color and sound. Fun perceptual experiment.
Generate a realistic‑sounding dinosaur name and see a fun description. Perfect for kids and writers.
Guess the movie title from a sequence of emojis. Hundreds of puzzles, score tracking. Pure frontend fun.
Get a random quote from Shakespeare's works with play and character attribution. Copy in beautiful typography.
Get a common English idiom with its meaning and example. Perfect for ESL learners. Local collection.
Click to get a random element and a short story about its discovery and uses. Fascinating science.
Click to see a random English word with its definition and an example sentence. Expand your vocabulary daily.
Get a random famous movie quote along with the film name and year. Test your movie knowledge. Static data, no API.
Browse a beautifully designed periodic table with electron shell visualization and key facts. Click any element to learn more. Offline ready.
Fetches a random Wikipedia article summary via API. Read interesting facts. Simple knowledge discovery tool. No data collected.
See a literal illustration of an idiom and guess the phrase. Fun for English learners.
Easily convert between kilograms, pounds, ounces, stones, and more. Supports both metric and imperial weight units. Instant and private conversions.
Enter a keyword or author to find classic quotes from public domain works. Inspiration tool.
Play Hangman where the words are element names. Learn the periodic table while having fun. High score localStorage.
See a clip of a famous artwork and choose the correct title. Art history fun. Local images.
Click for a random general knowledge question, then reveal the answer. Covers science, history, pop culture.
Generate a single line from famous public‑domain poems. Great for creative writing prompts or daily inspiration.