How to use the transform generator
- Start from a preset: 3D tilt, perspective views, isometric, flips, rotations, skews or origin tricks.
- Move and scale on each axis. Scale below zero mirrors the element.
- Rotate and skew on X, Y and Z, and set the perspective for 3D.
- Move the transform origin on the pad to rotate around a corner or edge instead of the center.
- Choose the output: the
transformshorthand, or individual properties. - Export CSS, SCSS or Tailwind.
How it works
.card {
transform: perspective(800px) rotateX(15deg) rotateY(-20deg);
transform-origin: 50% 50%;
}
perspective() inside the transform affects only this element. To share one vanishing point between several children, set perspective on the parent instead.
Worked examples
Example 1: a tilted product card
Load Card hover: lifted 8px and rotated slightly on X and Y. Apply it in a :hover rule with a short transition for an interactive 3D feel, and add a reduced-motion rule.
Example 2: a flip card
Load Hide back for the back face of a flip card. With backface-visibility: hidden, each side disappears when turned away. Rotate the container 180° on Y to flip between them.
Example 3: an isometric illustration
Load Isometric: rotateX(55°) and rotate(-45°) with no perspective produce the familiar isometric look for diagrams and hero graphics.
Performance and accessibility
Transforms are handled by the GPU, so they animate smoothly. Large skews and rotations make text hard to read, which the checker points out. If you animate transforms, respect prefers-reduced-motion.
Common mistakes
- Expecting neighbours to move. Use margins or layout properties for that; transforms are visual only.
- Overwriting transforms. Setting
transformon hover replaces the whole value. Individual properties avoid this. - Blurry text after scaling. Scaling text to non-integer sizes can soften it; finish animations at scale(1).
Performance tips
Transforms are among the cheapest properties to animate because the browser can move an element on the graphics card without recalculating layout. Animate transform and opacity rather than top, left, width or margin for smooth motion. Use will-change: transform sparingly, only on elements that are about to animate, because each promoted layer uses memory. Remove it again once the animation has finished. Also remember that transforms don’t affect layout: a scaled element still takes up its original space, so leave room around it.
Import CSS from your site
Already have a style you like? Open Import CSS (copy from a site), paste a rule or just its declarations from your stylesheet or your browser’s developer tools, and press Import into the controls. This tool reads transform functions (translate, rotate, scale, skew and perspective in 2D and 3D), the individual translate, rotate and scale properties, transform-origin and perspective. Everything else, and rules for states such as :hover or media queries, is listed as skipped, and the import can be undone in one step.