Looks like we don't follow the spec for serialization. The interpolation is correct. per this test case, when progress is 100%, our result is `matrix3d ( 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 )`. Per spec, the resolved value for matrix (https://drafts.csswg.org/css-transforms-2/#serialization-of-the-computed-value): ``` Chose between <matrix()> or <matrix3d()> serialization: If transform is a 2D matrix Serialize transform to a <matrix()> function. Otherwise Serialize transform to a <matrix3d()> function. ``` So in this case, the result is a 2D matrix, so we have to serialize it as a `matrix()` function, instead of `matrix3d()` function.
Bug 1850841 Comment 1 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Looks like we don't follow the spec for serialization. The interpolation is correct. per this test case, when progress is 100%, our result is `matrix3d ( 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 )`. Per spec, the resolved value for matrix (https://drafts.csswg.org/css-transforms-2/#serialization-of-the-computed-value): ``` Chose between <matrix()> or <matrix3d()> serialization: If transform is a 2D matrix Serialize transform to a <matrix()> function. Otherwise Serialize transform to a <matrix3d()> function. ``` So in this case, the result is a 2D matrix, and we have to serialize it as a `matrix()` function, instead of `matrix3d()` function.
Looks like we don't follow the spec for serialization. The interpolation is correct. per this test case, when progress is 100%, our result is `matrix3d ( 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 )`. Per spec, the resolved value for matrix (https://drafts.csswg.org/css-transforms-2/#serialization-of-the-computed-value): ``` Chose between <matrix()> or <matrix3d()> serialization: If transform is a 2D matrix Serialize transform to a <matrix()> function. Otherwise Serialize transform to a <matrix3d()> function. ``` So in this case, the result is a 2D matrix, and we have to serialize it as a `matrix()` function, instead of `matrix3d()` function. UPDATED: Well, we definitely has a check if it is 2D or 3D when serialization. Need to figure out what happened.
Looks like we don't follow the spec for serialization. The interpolation is correct. per this test case, when progress is 100%, our result is `matrix3d ( 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 , 0 , 0 , 0 , 0 , 1 )`. Per spec, the resolved value for matrix (https://drafts.csswg.org/css-transforms-2/#serialization-of-the-computed-value): ``` Chose between <matrix()> or <matrix3d()> serialization: If transform is a 2D matrix Serialize transform to a <matrix()> function. Otherwise Serialize transform to a <matrix3d()> function. ``` So in this case, the result is a 2D matrix, and we have to serialize it as a `matrix()` function, instead of `matrix3d()` function. UPDATED: Well, we definitely have a check if it is 2D or 3D when serialization. Need to figure out what happened.