- From: Roman Komarov via GitHub <noreply@w3.org>
- Date: Wed, 12 Nov 2025 23:35:14 +0000
- To: public-css-archive@w3.org
> By the way, we should have an anonymous version too, so you can have fully private stuff inside a mixin: Yep, that would be great! > `@property`, for example, will not work, because we expect a given custom property `--foo` to have a single definition for the same element, they show up in JS enumerations, etc. We would have to expose the prefix/scope, somehow. Yes, I guess, the question would be how to expose those. If the namespace is not anonymous, it has a name: could it contribute to the “outer” names of properties etc? I guess, while `ident(namespace(--a) --foo)` will work in CSSOM probably, it won't for anything that expects just an ident? We could create idents like `--ns.foo` or something, but yes, this needs more thought over how we could expose these in all the necessary places. > I don't want to call it "simple", and I'm unenthusiastic about the idea that @namespace --x transforms "every ident" to lexically scoped idents. From the authors' side, this is a very common ask: component and library authors don't want their names to conflict with others accidentally, and currently are required to either maintain the naming scheme manually or rely on tools like PostCSS and Lightning CSS to do it for them. But maybe this could also be a good way to access outer/inner scopes for shadow roots and tree-scoped names? I know that “every ident” is ambitious, but naming and conflicts is a constant pain point, so would be nice to find a single general solution for most cases. -- GitHub Notification of comment by kizu Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11798#issuecomment-3524341573 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 12 November 2025 23:35:16 UTC