Re: [csswg-drafts] [selectors][css-nesting] Move nest-containing and nest-prefixed selector definitions to Selectors (#5745)

I don't think we _can_ give `&` a special meaning inside is/has/etc. This would become very confusing:

```css
.a {
  .b:is(&) { ... }
}
```

We can't have `&` refer to both the parent context (`.a`) _and also_ the origin element for `:is()` (`.b`). One meaning would have to override the other in these situations, making it very fragile to nest/unnest these selectors, and it's entirely unclear at a glance which behavior is intended. I think `.b:not(.a ~ *) { ... }` is the proper way to handle the use-case.

The current proposal doesn't require two different meanings for `&` - we've just defined what the 'parent context' is (`:scope`) when there's no wrapping selector block.

-- 
GitHub Notification of comment by mirisuzanne
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/5745#issuecomment-1382361727 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Friday, 13 January 2023 20:37:35 UTC