OptionaloriginThe horizontal origin point for transformations (rotate, scale).
OptionaloriginThe vertical origin point for transformations (rotate, scale).
OptionalrotateRotation around the transform origin.
OptionalscaleUniform scaling factor (applied to both X and Y axes).
A value of 1 means no scaling, 2 means double size, 0.5 means half-size.
This value is overridden by scaleX and scaleY if they are also provided.
OptionalscaleHorizontal scaling factor. Overrides the X component of scale if provided.
OptionalscaleVertical scaling factor. Overrides the Y component of scale if provided.
OptionaltranslateHorizontal translation (movement along the X-axis), applied last in the chain and so carrying
whatever scale and rotate did before it.
OptionaltranslateVertical translation (movement along the Y-axis), applied last in the chain and so carrying
whatever scale and rotate did before it.
A 2D transform applied to a node and everything inside it, after the layout has placed it.
The parts compose as the CSS transform list
scale() rotate() translate(), in that order and about TransformProps.originX and TransformProps.originY. Each is written in the coordinate system the ones before it left behind, so a translation carries the scale and the rotation with it:{ scale: 2, translateY: 30 }moves the node 60 pixels down the page, and{ rotate: 90, translateX: 30 }moves it 30 pixels down rather than across.Lengths are resolved against the node's untransformed border box, which is what CSS resolves them against too:
translateY: '60%'of a 50-tall node is 30 before any scale reaches it.