- From: Miriam Suzanne via GitHub <sysbot+gh@w3.org>
- Date: Wed, 23 Mar 2022 16:34:48 +0000
- To: public-css-archive@w3.org
I agree. We could technically merge the two syntaxes completely. The 'Selector Scoping Notation' would fit fine in an at-rule (the other direction is a bit more difficult). In that case we don't have parenthesis to separate the two selector lists, and keywords (to/until) are indistinguishable from element selectors, so we use a symbol. The two most obvious solutions from there are either: 1. A different symbol for inclusive/exclusive (for example, using `/` for inclusive and `//` for exclusive) ```css /* inclusive scope rule */ @scope ([data-scope='main-component'] / [data-scope]) { .a { ... } } /* exclusive selector syntax */ ([data-scope='main-component'] // [data-scope]) .a { ... } ``` 2. A function name on the outer parenthesis ```css /* inclusive scope rule */ @scope inclusive([data-scope='main-component'] / [data-scope]) { .a { ... } } /* exclusive selector syntax */ exclusive([data-scope='main-component'] / [data-scope]) .a { ... } ``` Since the selector syntax requires a symbol anyway, I lean towards giving that symbol some power (option 1) to keep things compact. But option 2 has the advantage of being more explicit. Also open to other options here. -- GitHub Notification of comment by mirisuzanne Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/6577#issuecomment-1076507185 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 23 March 2022 16:34:49 UTC