Browser CSS Page Transitions API aka Shared Element Transitions

Browser CSS Page Transitions API aka Shared Element Transitions

In this Hasty Treat, Scott and Wes talk about the new Browser CSS Page Transitions API proposal and what features it opens up for developers on the web. Prismic - Sponsor Prismic is a Headless CMS that makes it easy to build website pages as a set of components. Break pages into sections of components using React, Vue, or whatever you like. Make corresponding Slices in Prismic. Start building pages dynamically in minutes. Get started at prismic.io/syntax. LogRocket - Sponsor LogRocket lets you replay what users do on your site, helping you reproduce bugs and fix issues faster. It’s an exception tracker, a session re-player and a performance monitor. Get 14 days free at logrocket.com/syntax. Show Notes WICG Shared Element Transitions 00:21 Welcome 01:33 Sponsor: Prismic 02:43 Sponsor: LogRocket 04:18 Browser animations on the web vs native apps 06:15 What is the targeted use case for it? 06:56 Shared Element to Root Transitions 11:14 Entry and Exit 17:33 How to enable this in Chrome Example Code Shared Element Transition history Sarah Drasner’s demo async function doTransition() { let transition = document.createDocumentTransition(); // Specify offered elements. The tag below is used to refer // to the generated pseudo elemends in script/CSS. document.querySelector(".old-message").style.pageTransitionTag = "message"; // The start() call triggers an async operation to capture // snapshots for the offered elements, await transition.start(async () => { // This callback is invoked by the browser when the capture // finishes and the DOM can be switched to the new state. // No frames are rendered until this callback returns. // Asynchronously load the new page. await coolFramework.changeTheDOMToPageB(); // Clear the old message if that element is still in the page document.querySelector(".old-message").style.pageTransitionTag = ""; // Set new message as the shared element 'message' document.querySelector(".new-message").style.pageTransitionTag = "message"; // Set up animations using WA-API on the next frame. requestAnimationFrame(() => { document.documentElement.animate(keyframes, { ...animationOptions, pseudoElement: "::page-transition-container(message)", }); }); // Note that when this callback finishes, the animations will start with the tagged elements. }); } Tweet us your tasty treats Scott’s Instagram LevelUpTutorials Instagram Wes’ Instagram Wes’ Twitter Wes’ Facebook Scott’s Twitter Make sure to include @SyntaxFM in your tweets

Jaksot(988)

916: I got fired, what should I focus on?

916: I got fired, what should I focus on?

In this potluck episode of Syntax, Wes and Scott answer your questions about maintaining popular open-source projects, where to start after a layoff, impostor syndrome, Scott’s recording setup, whethe...

2 Heinä 202558min

915: $200mo Background Agents, CLI Tooling and “Max Mode”

915: $200mo Background Agents, CLI Tooling and “Max Mode”

AI coding agents are getting wild. Scott and Wes break down the latest tools that run in the background, write code across multiple steps, and charge you $200 a month to do it. From CLI-based primitiv...

30 Kesä 202533min

914: 5 Upcoming + Next Gen JavaScript Features

914: 5 Upcoming + Next Gen JavaScript Features

Wes and Scott talk about the latest JavaScript proposals from TC39, including features like import defer, the powerful new random namespace, Array.fromAsync, and native clamp and upsert methods. They ...

25 Kesä 202533min

913: NEWS: Remix drops React, Safari 26 CSS + mega fast Vite and TypeSCript

913: NEWS: Remix drops React, Safari 26 CSS + mega fast Vite and TypeSCript

Wes and CJ break down the latest web dev news, including big changes in Safari 26, TypeScript Native Previews, and Remix dropping React. They also chat about new proposals from TC39, Vite 7 beta, and ...

23 Kesä 202550min

912: Why did Figma buy a CMS?

912: Why did Figma buy a CMS?

Wes chats with James Mikrut, founder of Payload CMS, about being acquired by Figma! They discuss building an open source business, the future of UI design, AI interfaces, and what this means for the f...

17 Kesä 202526min

911: Browsers in 2025: Whats up with Arc, Dia, Firefox, Chrome and Opera GX?

911: Browsers in 2025: Whats up with Arc, Dia, Firefox, Chrome and Opera GX?

Scott and Wes break down the state of web browsers in 2025, from the rise and fall of Arc and the fate of Firefox to hot takes on Opera GX, Raycast, and why power users might not be profitable. They c...

16 Kesä 202547min

910: If Statements in CSS?

910: If Statements in CSS?

Wes and Scott talk about the new If statements in CSS, breaking down how they work, why they matter, and when to use them. They explore use cases, syntax quirks, and how this feature pushes CSS closer...

11 Kesä 202524min

909: Handling and Throwing Errors

909: Handling and Throwing Errors

We break down how to properly throw, catch, and log errors in JavaScript and TypeScript. They cover client-side and server-side strategies, using tools like Sentry, and how to handle errors without ta...

9 Kesä 202539min

Suosittua kategoriassa Politiikka ja uutiset

uutiscast
aikalisa
ootsa-kuullut-tasta-2
politiikan-puskaradio
rss-ootsa-kuullut-tasta
tervo-halme
rss-vaalirankkurit-podcast
viisupodi
et-sa-noin-voi-sanoo-esittaa
rss-podme-livebox
rss-asiastudio
otetaan-yhdet
rss-girls-finish-f1rst
rikosmyytit
the-ulkopolitist
rss-raha-talous-ja-politiikka
rss-kaikki-uusiksi
rss-polikulaari-pitka-kiekko-ja-muut-ts-podcastit
rss-vain-talouselamaa
rss-tekkipodi