Bram.us
フィード

Polyfilling CSS with CSS Parser Extensions
Bram.us
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?
7日前

Anti-climax
Bram.us
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.
1ヶ月前

View Transitions Applied: Smoothly animating a border-radius with a View Transition
Bram.us
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.
2ヶ月前

Place the Address Bar at the bottom in Chrome on Android
Bram.us
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”.
2ヶ月前

View Transitions Applied: Dealing with the Snapshot Containing Block
Bram.us
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.
2ヶ月前

Solved by StyleObserver: Element.matchContainer()
Bram.us
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.
3ヶ月前

CSS @function + CSS if() = 🤯
Bram.us
Support for Nested Container Queries and the CSS if() function inside CSS Custom Functions make @function very powerful.
3ヶ月前

CSS Custom Functions are coming … and they are going to be a game changer!
Bram.us
Chrome is currently prototyping CSS Functions, which is very exciting!
3ヶ月前

View Transitions Applied: More performant ::view-transition-group(*) animations
Bram.us
If the dimensions of the ::view-transition-group(*) don’t change between the old and new snapshot you can optimize its keyframes so that it animates on the compositor.
3ヶ月前

View Transitions Snippets: Keeping the page interactive while a View Transition is running
Bram.us
The ::view-transition root overlay captures all clicks … but you can undo that.
3ヶ月前