Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[css-transforms-1][css-transforms] 3D considerations & module levels #9415

Open
cvrebert opened this issue Sep 26, 2023 · 0 comments
Open

[css-transforms-1][css-transforms] 3D considerations & module levels #9415

cvrebert opened this issue Sep 26, 2023 · 0 comments

Comments

@cvrebert
Copy link
Member

https://drafts.csswg.org/css-transforms/#interpolation-of-transform-functions

CSS Transforms Module Level 1

10. Interpolation of primitives and derived transform functions

[...]
If both transform functions share a primitive in the two-dimensional space, both transform functions get converted to the two-dimensional primitive. If one or both transform functions are three-dimensional transform functions, the common three-dimensional primitive is used.

In this example a two-dimensional transform function gets animated to a three-dimensional transform function. The common primitive is translate3d().

EXAMPLE 15
[...]
First translateX(100px) gets converted to translate3d(100px, 0, 0) and translateZ(100px) to translate3d(0, 0, 100px) respectively. Then both converted transform functions get interpolated numerically.


https://drafts.csswg.org/css-transforms/#WD20171130

Changes Since the 30 November 2017 Working Draft

[...]

  • Remove any reference of 3D transformations of transform function definitions.

A. Given the aforementioned changelog bullet, it seems incongruous that this section of the spec is mentioning 3D at all. I note that the only functions which Level 1 defines are 2D transform functions (https://drafts.csswg.org/css-transforms/#two-d-transform-functions ).

B. I am not intimately familiar with the CSSWG/W3C policy on the admissibility of references between spec levels, but it seems odd that Level 1 is explicitly referencing and hyperlinking to the Level 2-only translate3d function in the above-quoted section.

C. In the event that A & B aren't problematic, then for the sake of consistency and clarity, translateZ, which is likewise from Level 2 but mentioned in the quoted section of Level 1, should be properly hyperlinked/referenced.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants