Transform Generator
Visually create and preview CSS transform properties.
CSS Transform is a powerful CSS property that allows you to transform web elements in 2D or 3D space. Through transformations like translate, rotate, scale, and skew, you can create dynamic and interactive web designs. Easily create the desired effects with real-time preview.
transform: none;
Transform Functions
- • translate(x, y): translate(x, y): Move element by x, y amount
- • scale(x, y): scale(x, y): Scale element by x, y ratio
- • rotate(angle): rotate(angle): Rotate element by angle
- • skew(x, y): skew(x, y): Skew element by x, y degrees
Usage Tips
- • Multiple transform functions can be combined with spaces
- • Change transformation origin with transform-origin
- • Use with transition to create animation effects
- • Use perspective property for 3D transforms
🎯 Transform Basic Concepts
CSS Transform is a CSS property that changes the shape, size, and position of elements. It allows visual transformation of elements without disrupting the normal document flow.
Basic syntax:
transform: function(value) function(value) ...;
📐 Transform Function Details
🔄 Translate (Movement)
- •
translate(x, y)
: translate(x, y): Move along X, Y axes - •
translateX(x)
: translateX(x): Move along X axis only - •
translateY(y)
: translateY(y): Move along Y axis only - •
translate3d(x, y, z)
: translate3d(x, y, z): 3D movement
transform: translate(50px, 100px);
📏 Scale (Resizing)
- •
scale(x, y)
: scale(x, y): Scale X, Y axes - •
scaleX(x)
: scaleX(x): Scale X axis only - •
scaleY(y)
: scaleY(y): Scale Y axis only - • Greater than 1 enlarges, less than 1 shrinks
transform: scale(1.5, 0.8);
🔄 Rotate (Rotation)
- •
rotate(angle)
: rotate(angle): Rotate around Z axis - •
rotateX(angle)
: rotateX(angle): Rotate around X axis - •
rotateY(angle)
: rotateY(angle): Rotate around Y axis - • Use deg, rad, turn units for angles
transform: rotate(45deg);
📐 Skew (Shearing)
- •
skew(x, y)
: skew(x, y): Skew along X, Y axes - •
skewX(angle)
: skewX(angle): Skew along X axis - •
skewY(angle)
: skewY(angle): Skew along Y axis - • Transform into parallelogram shape
transform: skew(15deg, 5deg);
🎨 Transform Origin (Transformation Point)
The transform-origin property sets the transformation origin point. Default is the element's center (50% 50%).
Using keywords
transform-origin: top left;
Using percentages
transform-origin: 25% 75%;
Using pixels
transform-origin: 10px 20px;
⚡ Performance Optimization Tips
✅ Recommendations
- • Animate only transform and opacity
- • Use will-change property
- • Use 3D acceleration (translateZ(0))
- • Create composite layers for better performance
❌ Things to Avoid
- • Animating width, height
- • Animating left, top positions
- • Excessive transform nesting
- • Unnecessary will-change usage
Performance optimization example:
.optimized {
will-change: transform;
transform: translateZ(0); /* 3D 가속 */
transition: transform 0.3s ease;
}
🎬 Animation and Transitions
Transform can be used with CSS Transition and Animation to create smooth effects.
Transition example
.hover-effect {
transition: transform 0.3s ease;
}
.hover-effect:hover {
transform: scale(1.1) rotate(5deg);
}
Keyframe Animation example
@keyframes bounce {
0%, 100% { transform: translateY(0); }
50% { transform: translateY(-20px); }
}
.bounce { animation: bounce 1s infinite; }
🌐 Browser Compatibility
CSS Transform is supported in all modern browsers, but vendor prefixes may be needed for older browsers.
Vendor prefix example:
-webkit-transform: rotate(45deg); /* Safari, Chrome */
-moz-transform: rotate(45deg); /* Firefox */
-ms-transform: rotate(45deg); /* IE 9 */
transform: rotate(45deg); /* 표준 */
🎯 Real-world Usage Examples
Card hover effect
.card {
transition: transform 0.3s ease;
cursor: pointer;
}
.card:hover {
transform: translateY(-10px) scale(1.02);
}
Loading spinner
@keyframes spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}
.spinner {
animation: spin 1s linear infinite;
}
Modal entrance effect
.modal {
transform: scale(0) rotate(180deg);
transition: transform 0.3s ease;
}
.modal.show {
transform: scale(1) rotate(0deg);
}
Button click effect
.button {
transition: transform 0.1s ease;
}
.button:active {
transform: scale(0.95);
}
🔧 Debugging and Development Tools
Browser Developer Tools
- • Real-time editing in Elements panel
- • Check final values in Computed tab
- • Performance analysis with Performance tab
- • Check layer structure with 3D View
Useful CSS Properties
- •
transform-style: preserve-3d
- •
perspective: 1000px
- •
backface-visibility: hidden
- •
will-change: transform
💡 Pro Tips
Performance Tip
Using transform3d() or translateZ(0) to create composite layers for GPU acceleration can significantly improve animation performance.
Accessibility Tip
Use the prefers-reduced-motion media query to provide alternatives for users sensitive to motion.
Design Tip
Properly setting transform-origin can create more natural transformation effects.
Development Tip
Using CSS variables to dynamically control transform values makes JavaScript integration easier.