Sign in

Sajid Anwar

@sajidanwar.com
90 followers 176 following 55 posts

(Denver, USA)

PostsRepliesMedia
Sajid Anwar @sajidanwar.com · 14h
I will do anything for Chicago Pope
000
Sajid Anwar @sajidanwar.com · 15h
> Sadly, [typed arithmetic] still isn’t cross-browser (looking at you, Firefox). Fortunately, typed arithmetic is scheduled to ship in Firefox 158 🙂 www.firefox.com/en-US/firefo...
firefox.com
Firefox
010
Reposted by Sajid Anwar
Firefox for Web Developers @webdevs.firefox.com · 29/09/2026
Firefox 157 has landed, and includes a couple of useful CSS features: 🎉 at-rule() in @supports - lets you limit rules to browsers that support a given at-rule. 🎉 overscroll-behavior: chain - lets scrolling pass up to parent elements, but prevents UA effects like 'bounce' and overscroll. …And more!
developer.mozilla.org
Firefox 157 release notes for developers (Stable) - Mozilla | MDN
This article provides information about the changes in Firefox 157 that affect developers. Firefox 157 was released on September 29, 2026.
25311
Sajid Anwar @sajidanwar.com · 26/09/2026
This is Fall Out Boy character assassination
023
Reposted by Sajid Anwar
IntentToShip @intenttoship.dev · 22/09/2026
Gecko: Intent to Ship: CSS Typed Arithmetic
groups.google.com
Gecko: Intent to Ship: CSS Typed Arithmetic
Gecko: Intent to Ship: CSS Typed Arithmetic
0104
Sajid Anwar @sajidanwar.com · 21/09/2026
Chrome does support the step argument, their implementation of random() should be pretty complete and up-to-date with the spec. ... well, the editor's draft spec (drafts.csswg.org/css-values-5...). The latest published version is outdated, it looks like (www.w3.org/TR/css-value...).
drafts.csswg.org
CSS Values and Units Module Level 5
120
Reposted by Sajid Anwar
gamera obscura @ohrobin.bsky.social · 19/09/2026
incredibly well-done resident evil teaser from a movie theater
80169205728
Sajid Anwar @sajidanwar.com · 17/09/2026
The latest @firefoxnightly.bsky.social has CSS random() support enabled by default, please give it a try! I quite like the demos from @polypane.app here: polypane.app/blog/experim...
polypane.app
Experimenting with the new pure CSS random() function | Polypane
CSS is getting a random() function that lets you set properties with a random value, opening up a ton of interesting creative possibilities. In this article…
093
Reposted by Sajid Anwar
IntentToShip @intenttoship.dev · 14/09/2026
Gecko: Intent to Prototype: CSS random() math function
groups.google.com
Gecko: Intent to Prototype: CSS random() math function
Gecko: Intent to Prototype: CSS random() math function
0194
Reposted by Sajid Anwar
Firefox for Web Developers @webdevs.firefox.com · 08/09/2026
The CSS progress() function is now in all major engines! Here's how it works:
511818
Sajid Anwar @sajidanwar.com · 01/09/2026
Aha, this is excellent, I didn't even think of it! Though hopefully I'll be able to get true typed arithmetic in Firefox in a month or two. 🙂
140
Reposted by Sajid Anwar
panamenina.bsky.social @panamenina.bsky.social · 27/08/2026
Now that I've discovered honey on toast, I'm like Winnie Pooh Bear on this shit
011
Reposted by Sajid Anwar
Alex Russell @infrequently.org · 27/08/2026
That irresistible urge to rewatch Clue.
2121
Sajid Anwar @sajidanwar.com · 26/08/2026
Thank you! So I added the alpha() relative color function and the progress() math function, those will be shipping in Firefox 155 very soon. In flight, I'm working on CSS Typed Arithmetic (developer.mozilla.org/en-US/docs/W...) which will let you multiply and divide dimensions, pretty neat!
developer.mozilla.org
Using CSS typed arithmetic - CSS | MDN
CSS typed arithmetic refers to permitted calculations performed with typed CSS values via functions such as calc(), and specifically, to the behavior defined in the CSS values and units module. CSS ty...
201
Sajid Anwar @sajidanwar.com · 25/08/2026
At this point I'm basically working on Firefox to chase the thrill of these videos releasing
3154
Reposted by Sajid Anwar
Firefox for Web Developers @webdevs.firefox.com · 25/08/2026
CSS sibling-count() and sibling-index() are newly available across engines! Here's how they work:
314925
Sajid Anwar @sajidanwar.com · 24/08/2026
I do agree that more flexibility with the prefix would be nice. The specification does say "Other separators, like _, might be added as possibilities in the future", so I'm optimistic. Also see github.com/w3c/csswg-dr..., an issue exploring enhancements to the attribute selector capability.
github.com
[selectors] Modifier for attribute selectors to split values into words · Issue #14371 · w3c/csswg-drafts
In #10001 (comment) @paceaux suggested to introduce a new modifier w that changes the value matching to take word boundaries into account. Taking the example from that comment, the selector [class^...
200
Sajid Anwar @sajidanwar.com · 24/08/2026
- You mention the existing attribute syntax (like [class*=" btn-"]) and that IDs should get this too. But classes are special because of the whitespace behavior of the attribute. I think .foo-* is certainly better than `:is([class^="foo-"], [class*=" foo-"])`. For IDs, `[id^="foo-*"]` seems fine.
300
Sajid Anwar @sajidanwar.com · 24/08/2026
- BEM with double-hyphen is supported. Bramus' example in his post is just to show that the .foo-* doesn't match .foo--bar. But the spec is explicit that .foo--* would match (drafts.csswg.org/selectors-5/...). I think this is generally reasonable, e.g. .alert--heading and .alert-panel are unrelated.
drafts.csswg.org
Selectors Level 5
200
Sajid Anwar @sajidanwar.com · 24/08/2026
There's a couple errors in this that I think, once corrected, will make the selector seem at least a little more reasonable: - The * is not regex (if it were, .foo-* would actually mean zero or more hyphens *only*). It's not meant to be regex, it's just new syntax to learn and use.
200
Sajid Anwar @sajidanwar.com · 20/08/2026
Like in this example - codepen.io/kbhomes/pen/... - when `text-box: trim-start cap text` is what the author selected, it seems wrong for the cap-height to not be aligned with the image in all cases. (Pen forked from @jensimmons.bsky.social which was extremely helpful during implementation!)
codepen.io
`text-box-trim`, negative leading, over alignment
...
020
Sajid Anwar @sajidanwar.com · 20/08/2026
My suspicion is that while it might be weird to discard negative leading for vertical centering use cases, not discarding it for top/bottom alignment would be *much* weirder. If you want to align a heading to an adjacent image, the intent would be that the trim edge is always respected (I think).
120
Sajid Anwar @sajidanwar.com · 19/08/2026
Dream realized: Jake video about a feature I contributed to Firefox!
1160
Sajid Anwar @sajidanwar.com · 18/08/2026
Hey, top billing for my text-box and sibling-* changes! 🥰
0103
Sajid Anwar @sajidanwar.com · 16/08/2026
Yeah, these do work in both. But I think you're probably right, `::first-line` is already kind of really wonky across browsers. I'll try to get it into 155, plus the new 2-week cycle helps a lot.
110
Sajid Anwar @sajidanwar.com · 16/08/2026
Filed bugs and patches for these: - Wrong line trimmed when `::first-line` exists: bugzilla.mozilla.org/show_bug.cgi... - Wrong trim metric used if `::first-line` changes the font: bugzilla.mozilla.org/show_bug.cgi... Tagged these as Firefox 154 defects, wonder if I should uplift when they land?
bugzilla.mozilla.org
2063909 - [text-box-trim] Wrong line is trimmed when inline on last line is fragmented
ASSIGNED (sajidanwar94) in Core - Layout: Block and Inline. Last updated 2026-08-16.
100
Sajid Anwar @sajidanwar.com · 13/08/2026
Also this made me want to replicate the MGSV title (codepen.io/editor/kbhom...) but I found some Firefox issues I'll need to fix ... - ::first-line trips up the "last line?" check in some cases, trimming the wrong line - A modified font size in a ::first-line style isn't respected for trimming
codepen.io
text-box-trim, ::first-line, negative line-height
A code demo by Sajid Anwar created on CodePen
110
Sajid Anwar @sajidanwar.com · 13/08/2026
Appreciate it! Personally I'm glad to have the opportunity to contribute to something as cool as Firefox 🙂
010
Sajid Anwar @sajidanwar.com · 13/08/2026
Seems like Blink and Gecko support trimming the negative leading to actually grow the text box, but WebKit doesn't. I'm going to add some WPTs for this and file an issue with the CSSWG about if this should be supported / have an explicit note in the spec. (It seems like a useful behavior.)
110
Reposted by Sajid Anwar
Keith Cirkel @keithamus.social · 12/08/2026
I really love my job. I thought I'd always be a web developer, but developing the web is so much more fun! Adding new features for ~4bn customers is such a satisfying feeling.
1661
Reposted by Sajid Anwar
IntentToShip @intenttoship.dev · 06/08/2026
Gecko: Intent to Ship: alpha() relative color function
groups.google.com
Gecko: Intent to Ship: alpha() relative color function
Gecko: Intent to Ship: alpha() relative color function
1103
Reposted by Sajid Anwar
IntentToShip @intenttoship.dev · 05/08/2026
Gecko: Intent to Prototype: CSS at-rule() function for @supports
groups.google.com
Gecko: Intent to Prototype: CSS at-rule() function for @supports
Gecko: Intent to Prototype: CSS at-rule() function for @supports
0164
Reposted by Sajid Anwar
Firefox Nightly @firefoxnightly.bsky.social · 03/08/2026
Firefox now supports the progress() CSS function. This is a math function that can be used in calculations to compute the position of a value relative to a start and an end. bugzilla.mozilla.org/2047345
bugzilla.mozilla.org
2047345 - Set layout.css.progress-function.enabled for all users
RESOLVED (sajidanwar94) in Core - CSS Parsing and Computation. Last updated 2026-08-01.
1284
Sajid Anwar @sajidanwar.com · 29/07/2026
Also me! 😀 There are some serialization changes that the CSSWG is going to discuss soon, so maybe a full release for 155 or 156?
010
Sajid Anwar @sajidanwar.com · 29/07/2026
Huge thanks to the developers at @firefox.com for all the assistance and reviews, I'm genuinely having so much fun contributing (special shout out to Emilio, David, Jonathan, and Nicolas!)
050
Sajid Anwar @sajidanwar.com · 29/07/2026
... which honestly might have ended up being more work overall due to various calc() prerequisites. I was able to land that and come back to text-box-trim afterwards, and now all of it is releasing in just a few weeks!
130
Sajid Anwar @sajidanwar.com · 29/07/2026
Firefox 154 arrives pretty soon and I genuinely can't contain my excitement 😇 text-box-trim was the first "big" feature I wanted to contribute but it felt like it was a bit beyond my reach. So I started on some other layout work, and took a detour to work on sibling-index() and sibling-count() ...
3223
Sajid Anwar @sajidanwar.com · 28/07/2026
Ah, that might be on me! I'm pretty new on contributing to Firefox so I missed the process for getting the flag added to the Experimental Features page. Looks like it was mentioned in the 154 nightly release notes (www.firefox.com/en-US/firefo...) and will be on the 155 stable release notes.
firefox.com
Firefox
110
Sajid Anwar @sajidanwar.com · 28/07/2026
Exciting to see coverage of progress() in Firefox! I enabled the feature for Firefox 155, currently scheduled to ship on September 1st, relatively soon! Also a minor correction, both the progress() function and the no-clamp keyword have been enabled for all Firefox Nightly users since June 24th 🙂
110
Reposted by Sajid Anwar
Firefox for Web Developers @webdevs.firefox.com · 23/07/2026
A little dive into web standards… Why changes were made to popover="hint", and why diversity in browser engines is important: (sorry again for the YT link - video uploads are still broken on bsky) youtube.com/shorts/9LDmd...
youtube.com
popover="hint" & engine diversity
YouTube video by Firefox for Web Developers
17113
Reposted by Sajid Anwar
Emelia @thisismissem.social · 21/07/2026
Said something interesting to a friend today when they asked about different open social web protocols. It might be a little bit controversial, but: I think that ActivityPub is decentralized in principle, whereas AT Protocol is decentralized in practice. 🧵
211118
Reposted by Sajid Anwar
IntentToShip @intenttoship.dev · 21/07/2026
Gecko: Intent to Prototype: CSS Typed Arithmetic
groups.google.com
Gecko: Intent to Prototype: CSS Typed Arithmetic
Gecko: Intent to Prototype: CSS Typed Arithmetic
0124
Sajid Anwar @sajidanwar.com · 16/07/2026
Update: I am in fact trying to land this in Firefox 154 now. 😅 groups.google.com/a/mozilla.or...
groups.google.com
Intent to Ship: text-box-trim / text-box-edge
010
Reposted by Sajid Anwar
IntentToShip @intenttoship.dev · 14/07/2026
Gecko: Intent to Ship: text-box-trim / text-box-edge
groups.google.com
Gecko: Intent to Ship: text-box-trim / text-box-edge
Gecko: Intent to Ship: text-box-trim / text-box-edge
1346
Reposted by Sajid Anwar
Mayor Zohran Kwame Mamdani @mayor.nyc.gov · 14/07/2026
This morning in Biddeford, Maine, a 26-year-old man said goodbye to his wife and daughter and left for work. Moments later he was dead, shot in the head by ICE agents, the second man ICE has killed in six days. ICE is killing our neighbors. ICE cannot be reformed. Abolish ICE.
10706503120329
Reposted by Sajid Anwar
andré, but scarier @andre-carlisle.bsky.social · 11/07/2026
they really told us their tech was so good it registered three strands of hair and days later the ball smashes into a metal cable and nothing happens. alright. ok.
523951
Sajid Anwar @sajidanwar.com · 08/07/2026
HBO refused to air this episode of The Rehearsal
021
Sajid Anwar @sajidanwar.com · 08/07/2026
Correction: I enabled the feature on Nightly builds *only* (for developer testing/crash reporting purposes), but it won't be available in Firefox 154 beta or stable. It's still in development but should become Baseline Newly Available in an upcoming release (I'm optimistic that'll be Firefox 155).
110
Reposted by Sajid Anwar
Jennie Coughlin @jenniecoughlin.bsky.social · 02/07/2026
And here's a visual look at many of the immigrant communities around the country as they cheer on teams from their home or ancestral countries in the World Cup.
nytimes.com
In the United States, Every World Cup Team Is a Home Team (Gift Article)
At block parties, backyards and beer halls, an expanded tournament gave immigrant diasporas large and small the chance to revel in support of their home countries.
22411
Reposted by Sajid Anwar
Adam Serwer @adamserwer.bsky.social · 04/07/2026
Cabo Verde was heroic. Never to be forgotten
332610187