Re: [csswg-drafts] Source maps for CSS (#13098)

I'm sad I missed this at TPAC! As the author of a wannabe transpiler/minifier ([csskit](http://github.com/csskit/csskit/)) I too am interested. Some loose thoughts:

 - Selector component granularity would be helpful, as minifiers may be able to elide redundant selector components, or expand selectors (especially for e.g. into vendor prefixes). 
 - Many transpilers expand properties into vendor prefixes based on browser support, but this might become more complex as time goes on, e.g. support rules or vars - so a way to fan out a source location into many incongruent blocks would be useful.
 - Natalie added the extremely insightful comment that SASS interpolations could result in a stack. I'd offer that modern CSS might also require this, given new mixin/if/function syntax could be elided by newer bundlers.
 - Further to Devon's comment, some transpiler techniques might involve re-mapping dashed idents, but also remapping functions into multiple rules; for example `light-dark()` can be re-created through the use of CSS properties, though perhaps this is the same shape of problem as the "fan out a source location into many incongruent blocks"...
 - My belief is that many css bundlers are quite conservative at rewriting style rules. I have a hunch it's possible to build a DAG of a CSS bundle and aggressively re-nest, un-nest, or otherwise rewrite rules & selectors to optimise for delivery. I imagine this is true of JS source maps - but having the ability to point multiple served-source locations to one authored-source location, or a single served-source locations to multiple authored-source locations could be helpful (though the latter maybe difficult).

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


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

Received on Monday, 17 November 2025 18:49:56 UTC