πTransforms
CSS Transforms enable you to rotate, scale, skew, and translate elements to create dynamic visual effects.
CSS Transforms allow you to visually manipulate elements by rotating, scaling, skewing, or moving them. They're powerful for creating interactive effects like hover animations and dynamic layouts.
Accessing Transforms
Select an instance in the canvas
Open the Style Panel on the right
Scroll to the Transforms section (or search for "transform")
Click the + button to add a transform
Transform Properties
Translate
Move an element horizontally (X) or vertically (Y) without affecting the document flow:
translateX: Move left (negative) or right (positive)
translateY: Move up (negative) or down (positive)
translateZ: Move forward/backward (for 3D effects)
Rotate
Spin an element around its center point:
rotate: 2D rotation (e.g.,
45degrotates 45 degrees clockwise)rotateX/Y/Z: 3D rotation around specific axes
Scale
Resize an element:
scaleX: Stretch horizontally
scaleY: Stretch vertically
scale: Uniform scaling (1 = original, 2 = double, 0.5 = half)
Skew
Tilt an element:
skewX: Slant horizontally
skewY: Slant vertically
Transform Origin
Set the point around which transforms occur (default is center):
transform-origin: e.g.,
top left,center,50% 50%
Combining Multiple Transforms
You can stack multiple transforms on a single element. Each transform is applied in order, which affects the final result.
Common Use Cases
Card Hover Effect
Create an interactive card that lifts on hover:
Add a Box element and style it as a card
Add a subtle
box-shadowSelect the Hover state from the States dropdown
Add transforms:
translateY: -8px(lift the card)rotate: 2deg(slight tilt)
Switch back to the default state
Add a
transitionproperty:transform 0.3s ease
Button Scale Effect
Make buttons feel tactile:
Select your button
In the Hover state, add
scale: 1.05Add
transition: transform 0.2s easeon the default state
Rotating Icons
Create spinning icons for loading states:
Select an icon
Add
rotate: 360degin an animation or hover state
Transforms with Transitions
Transforms are most effective when combined with CSS Transitions for smooth animations:
Apply the transform on the target state (hover, focus, etc.)
Apply the transition on the default state
The transition property should include
transform(e.g.,transition: transform 0.3s ease)
Tip: For hover effects, always add the transition on the default state, not the hover state. This ensures smooth animation both on hover and when the cursor leaves.
Z-Index with Transforms
When lifting elements with translateY on hover, you may want them to appear above siblings:
Set
position: relativeon the elementOn hover, increase
z-index(e.g.,z-index: 10)
Performance Considerations
Transforms are GPU-accelerated, making them ideal for animations:
Prefer
transform: translate()overtop/leftfor movementPrefer
transform: scale()overwidth/heightfor resizingThese properties don't trigger layout recalculation, resulting in smoother 60fps animations
Related
Animations β Create scroll-driven and interactive animations
CSS Variables β Define reusable style values
Animation Group β Container for scroll-driven animations
Anatomy of the Webstudio Builder β Learn about the Style Panel
Last updated
Was this helpful?
