Move elements around the DOM while preserving their state with moveBefore Unlike the classic way of moving a node by removing+reinserting it, the moveBefore method preserves the element’s state! Read Post →
View Transitions Snippets: Keeping track of the old and new positions of a transitioned element By calling getBoundingClientRect before and after the snaphots are taken, you can get the before and after positions of the transtioned elements. Read Post →
View Transitions Snippets: Getting all Animations linked to a View Transition A few lines of JavaScript to get all animations linked to an active View Transition. Read Post →
Experiment: Automatically trigger a View Transition when a JavaScript Property of an Element changes Tricking a MutationObserver into observing changes to IDL attributes by syncing the IDL attributes to their Content Attribute counterparts. Read Post →
Animatable Accordions (2024.11.27 @ devs.gent) Talk on animating the <details> element with transition-behavior: allow-discrete , interpolate-size: allow-keywords, and ::details-content. Read Post →
The Future of CSS: Construct <custom-ident> and <dashed-ident> values with ident() Uniquely name a bunch elements in CSS in one go! Instead of assigning 100 unique names through 100 declarations, write only 1 and use ident() to construct the names. Read Post →
Spot Non-Composited Animations in Chrome DevTools The animations track of a performance trace can now tell you why an animation was not composited. Read Post →
Experiment: Automatically triggered View Transitions with MutationObserver A MutationObserver and document.startViewTransition love story. Read Post →
Supercharge Web UX with View Transitions (2024.10.18 @ React Brussels) Slides + recording of the talk “Supercharge Web UX with View Transitions” I gave at React Brussels 2024 Read Post →
Chrome Dark Mode Toggle v1.1 On top of a per-origin override, you can now set a Chrome-wide preference to have your OS in Dark Mode but all sites in Light Mode (or vice versa). Read Post →