My Tool Studio
CSS

CSS Transform Generator

Nudging, spinning, and resizing elements is what this css transform generator handles: six sliders for Translate X, Translate Y, Rotate, Scale, Skew X, and Skew Y, with a preview card that responds as you drag. It's a transform css maker that composes the functions for you in one predictable order, translate first, then rotate, scale, and skew, so the output always reads the same way. Push Rotate to 45 degrees and Scale to 120 percent and the CSS line becomes transform: rotate(45deg) scale(1.20). Developers use it to prototype hover states, tilt product cards, and figure out why an element keeps landing in the wrong spot. Copy the finished declaration with one click and drop it into a hover rule or a keyframe.

Always freeNo sign upRuns in your browser
Toolora
transform: none;
Translate X0px
Translate Y0px
Rotate0°
Scale100%
Skew X0°
Skew Y0°

How to use

01

Slide the movement controls

Drag Translate X and Translate Y between -200px and 200px to move the preview card. Only non-default values appear in the output, so an untouched slider adds nothing to your CSS.

02

Add rotation, scale, and skew

Rotate spans -360 to 360 degrees, Scale runs 10 to 200 percent and is written as a decimal factor, and the two skew sliders tilt the card up to 45 degrees on each axis.

03

Copy the transform line

The CSS pane shows the complete declaration, for example transform: translate(20px, 0px) rotate(8deg). Click the copy button and paste it into a rule, a hover state, or a keyframe block.

Why CSS Transform Generator

Common questions

In what order does the css transform generator chain the functions?
Always translate, then rotate, then scale, then skewX, then skewY, and only the sliders you've moved appear in the output. A fixed order matters because transforms compound: each function operates in the coordinate space produced by the ones before it.
Why does my element land somewhere unexpected when I combine rotate and translate?
Because rotation turns the element's own axes. If rotate comes before translate in your hand-written CSS, the slide happens along the rotated axis and the element drifts diagonally. This tool always emits translate first, which keeps movement aligned with the screen and easier to reason about.
Does this tool cover the full rotate scale translate css trio?
Yes, plus skew on both axes, which most quick references skip. Anything expressible as a 2D transform chain of those functions can be dialed in here. 3D functions like rotateY or perspective aren't included, so those still get typed by hand.
What ranges do the transform sliders cover?
Translate X and Y go from -200px to 200px, Rotate from -360 to 360 degrees, Scale from 10 to 200 percent, and both skew sliders from -45 to 45 degrees. That range covers practically every UI effect short of full spins and giant zooms.
Do CSS transforms push the surrounding content around?
No. The element keeps its original slot in the layout; the transform only changes how it's painted. Neighbors don't reflow, which is exactly why animating transforms is cheap and why a scaled card can overlap the one next to it.
Is scaling with transform better than animating width and height?
For motion, yes. Scale runs on the compositor without recalculating layout, so it stays smooth even mid-scroll, while width and height changes force reflow on every frame. Use this tool's Scale slider to find the factor, then transition transform rather than the box dimensions.
How do I get a clean starting state from the transform code generator?
Return every slider to its default: 0 for the translates, rotate, and skews, 100 for scale. The output then reads transform: none, which is the correct way to declare an explicit no-transform state for the start of an animation.

More CSS tools

View all