4 ms·
Also, the other browsers may have launched a little too early while some weird spec corner cases were getting worked out. All of that got worked out a while ag
by alwillis 4y ago
Also, the other browsers may have launched a little too early while some weird spec corner cases were getting worked out.
All of that got worked out a while ago; you can read the CSSWG notes and check the bug trackers for WebKit, Firefox and Chrome.
It’s not that WebKit, which shipped :has() back in March, was too early but Mozilla had some difficulties with their implementation [1].
It took Google (and Igalia) until the end of August to ship their implementation in Chrome 105 [2].
Even though web developers have been asking for this for nearly 20 years, it only recently got figured out.
Based on Apple’s article [3] and Igalia's prototyping document [4], this is easily the most complex CSS selector that’s ever been implemented.
I would cut Mozilla some slack.
[1]: https://bugzilla.mozilla.org/show_bug.cgi?id=418039 https://bugzilla.mozilla.org/show_bug.cgi?id=418039
[2]: https://developer.chrome.com/blog/new-in-chrome-105/ https://developer.chrome.com/blog/new-in-chrome-105/
[3]: https://webkit.org/blog/13096/css-has-pseudo-class/ https://webkit.org/blog/13096/css-has-pseudo-class/
[4]: https://github.com/Igalia/explainers/blob/main/css/has/prototyping-details.md https://github.com/Igalia/explainers/blob/main/css/has/proto...