Sign up

Bram.us

Not verified No WebSub updates No webmention support Valid

A rather geeky/technical weblog, est. 2001, by Bramus

Generator
https://wordpress.org/?v=6.9.4
Public lists
btconf 2026 speakers
Fetched

Bram.us Valid
• Bramus!

Supercharge Web UX with View Transitions (2025.05.28 @ WebExpo)

Slides + Recording of the talk “Supercharge Web UX with View Transitions” I gave at WebExpo.

Bram.us Valid
• Bramus!

Web animations today and tomorrow (Google I/O 2025)

For this year’s Google I/O, I recorded the session “Web animations today and tomorrow”. Check it out to learn how to guide, inform, and delight users by adding subtle and supportive animations to your web UIs.

Bram.us Valid
• Bramus!

View Transitions Applied: Smoothly animating a border-radius with a View Transition, revisited

Instead of duplicating an animation on the ::view-transition-group pseudo, you can also rely on CSS transitions on the original element … if you’ve set it up correctly.

Bram.us Valid
• Bramus!

Polyfilling CSS with CSS Parser Extensions

In April I attended #BlinkOn, the conference for web platform contributors in the Chromium open source project. At the conference I gave a presentation about “CSS Parser Extensions”, a wild idea I have to fix CSS polyfilling once and for all. If you didn’t know, polyfilling CSS features is extremely hard, mainly because the CSS Parser discards what it does not understand. So what if, instead of having authors write their own parser and cascade to polyfill a CSS feature, they could teach the parser some new tricks?

Bram.us Valid
• Bramus!

Anti-climax

After a wonderful week in San Francisco and Mountain View, the week ended in a disaster when my colleague and friend Adam was told to find another role at Google – Roughly translated: they fired him without actually firing him.

Bram.us Valid
• Bramus!

View Transitions Applied: Smoothly animating a border-radius with a View Transition

To smoothly animate things like borders as part of a View Transition, you need to duplicate that animation onto the ::view-transition-group. For best effect, have the View Transition separately capture the background and foreground of the element you’re animating.

Bram.us Valid
• Bramus!

Place the Address Bar at the bottom in Chrome on Android

New in Chrome 134 on Android: the ability to place the Address Bar (aka “Omnibox”) at the bottom. To enable it, go to Chrome’s Settings, locate and tap “Address Bar”, and choose “Bottom”.

Bram.us Valid
• Bramus!

View Transitions Applied: Dealing with the Snapshot Containing Block

Beware when manipulating the coordinates of the View Transition’s ::view-transition-group(*) pseudo. Depending on where you read those coordinates from, you might end up with layout jumps when writing them back. This post details the pitfalls and how to deal with them, unlocking more performant animations on the ::view-transition-group() pseudo along the way.

Bram.us Valid
• Bramus!

Solved by StyleObserver: Element.matchContainer()

Martin Winkler published a package that polyfills Element.matchContainer to get notified in script when a Container Query matches/unmatches. Under the hood, it uses a StyleObserver.