Consider atan2(10em, 13vh)
. Should that work? Per spec, it should because the two units are <length>
s, and the spec says:
The atan2(A, B) function contains two comma-separated calculations, A and B. A and B can resolve to any
<number>
,<dimension>
, or<percentage>
, but must have the same type, or else the function is invalid.
If we allow different units, we can't resolve atan()
at parse-time (because it starts depending on resolving those <length>
s to pixels). That introduces a new set of property dependencies which didn't exist before. For example, we'd need to define how ex/etc units resolve on font-weight
, since font-weight
can affect the primary font, and with this you could do font-weight: atan2(2ex, 10px)
.
My implementation in Firefox doesn't allow mixed relative units in atan2()
(because I misread the spec). This is also problematic for Chromium implementation-wise (even without all these new dependency shenanigans).
Unless this is extremely useful, it might be worth restricting relative lengths to enforce same-unit-ness.
cc: @tabatkins @DevSDK @dbaron
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.3