- From: Lasse Fister via GitHub <sysbot+gh@w3.org>
- Date: Fri, 26 Mar 2021 03:59:45 +0000
- To: public-css-archive@w3.org
graphicore has just created a new issue for https://github.com/w3c/csswg-drafts: == [css-values] add function to convert numeric data types to <number> == The discussion in #4430 made me think, it would be nice to have a way to convert e.g. a length to a number: ```css * { font-variation-settings: "opsz" convert-to-number(1em, pt); } /* If the user default font-size is 16px the above would equal to: */ * { font-variation-settings: "opsz" 12; } ``` `font-variation-settings` is, from my perspective the best use case, as each keyword in it requires a `<number>` and its often related to a `<length>`. This could improve usage of variations that don't have a sufficient or any higher level property a lot, and make them accessible for `calc()` math. `convert-to-number()` could be used in other cases too and would make it possible to relate properties in a way it is not currently possible without JavaScript. Another example is to control a paused `animation` state by screen width using something like: ```css /* a pattern that can be used to reduce @media queries */ .animated { animation-play-state: paused; animation-duration: 1s; animation-delay: calc(-1s * (min(1920, convert-to-number(100vw, px) / 1920)); } ``` Since it's possible to convert a number to a unit-value, like in `calc(1px * 16) /* -> 16px */ `, it would make sense to have a way to do the inverse: `calc(16px / 1pt) /* -> 1px * 16 / 1px * (4/3) -> 12 */`. But, I don't think this is possible now and it would probably make internal things much more complicated, hence my proposal to add a new function. Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/6149 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Friday, 26 March 2021 03:59:47 UTC