-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
:matches() is now :is() in the spec #19
Comments
Excellent. We should take a look. This plugin is getting long in the tooth, despite being used so often. |
Could we simply rename |
Find and replace all 😂 @jonathantneal |
Also keep backwards compatibility for |
Yes it should be deprecated not replaced |
Is anyone able to review my fork to see if everything I did would solve this issue? All tests passing for both I can open a PR if needed/preferred. Just let me know 👍 |
The problem is that For instance: head ~ :is(html > body) {}
/* should become */
html > head ~ body {}
/* and should not become */
head ~ html > body {} Given a CSS selector that is To properly polyfill
Next, we must separate and merge the last compound selector from its preceding complex selector.
Note: These compound selectors must be merged into a single valid selector, correctly inferring universal selectors ( Next, all possible combinations of the preceding complex selectors (
|
@jonathantneal What about a partial implementation until this is resolved? It seems the problem only happens with combinators, however |
@LeaVerou FYI, there’s now csstools/postcss-is-pseudo-class (not released yet). |
Forgive this tangental response. PostCSS Preset Env is in need of updates and publishes. I am very happy to say that my working conditions have changed in a manner that may now afford me some time to actually do this. Secondarily, I have been distracted from updating PostCSS Preset Env because of the complexities that arise from requiring 3 parsers to work with CSS. A breaking changes in 1 of those parsers has meant that upgrading one package has required a kind of chain reaction. Contributors at first were eager to help me, but the complexities and the time required to address them evaded even some of those generous folks. The situation is so frustrating that I have gone as far as looking into creating a new tool for the PostCSS ecosystem; one that parses selectors and values out of the box — following the CSS Syntax specification — while still preserving all those "lossless" bits like whitespace and comments. At times, these things feel so tangental to the issue. That is until I actually try adding And there’s one other distraction. It’s whether I should prepare PostCSS plugins for incorrect caniuse data. I already have this issue with CSS Logical Properties and, for another project, Resize Observer. |
Awesome, any release ETA? |
It seems that |
Just found postcss-pseudo-is |
There’s also postcss-is-pseudo-class, which is actively maintained, so I’m closing this issue. |
The
:matches()
pseudo-class is now renamed to:is()
. See the Github issue and the spec.I think it’s probably worth of support both instead of creating a new extension for the
:is()
.The text was updated successfully, but these errors were encountered: