El uso de la propiedad transform en CSS ha revolucionado la forma en que los desarrolladores web pueden manipular elementos en una página. transform permite aplicar varias transformaciones gráficas a un elemento, como rotaciones, escalados, traslaciones e inclinaciones, todo sin afectar el flujo del documento. Este artículo te guiará a través de los conceptos básicos, las diferentes transformaciones disponibles y ejemplos prácticos de cómo usar transform en tus proyectos web.
¿Qué es la Propiedad transform?
La propiedad transform en CSS permite modificar el espacio de coordenadas de un elemento, aplicando transformaciones gráficas como rotaciones, escalas, traslaciones e inclinaciones. Estas transformaciones pueden ser 2D o 3D.
Sintaxis Básica
transform: none | transform-functions;
- none: No se aplica ninguna transformación.
- transform-functions: Una o más funciones de transformación, separadas por espacios.
Funciones de Transformación
1. translate()
La función translate() mueve un elemento desde su posición actual. Acepta valores para el eje X e Y.
transform: translate(50px, 100px);
2. rotate()
La función rotate() gira un elemento alrededor de un punto de origen definido (por defecto, el centro del elemento). Acepta un valor en grados (deg), radianes (rad), giros (turn), etc.
transform: rotate(45deg);
3. scale()
La función scale() redimensiona un elemento. Acepta valores de escala para el eje X e Y. Un valor de 1 significa sin cambio, mientras que valores mayores o menores que 1 aumentan o disminuyen el tamaño respectivamente.
transform: scale(1.5, 0.5);
4. skew()
La función skew() inclina un elemento en los ejes X e Y. Acepta valores en grados para cada eje.
transform: skew(30deg, 20deg);
5. matrix()
La función matrix() permite aplicar una transformación combinada en una sola función, utilizando una matriz de 2D.
transform: matrix(1, 0, 0, 1, 50, 100);
6. 3D Transformations
Además de las transformaciones 2D, transform también soporta transformaciones 3D, como rotate3d(), translate3d(), scale3d(), etc.
Ejemplo: rotate3d()
transform: rotate3d(1, 1, 0, 45deg);
Usar transform en CSS: Ejemplos Prácticos
Rotar un Elemento
CSS
.rotar {
    transform: rotate(45deg);
}
html
<div class="rotar">Este texto está rotado 45 grados.</div>
