CSS Avanzado

Efectos visuales y movimiento con CSS

Cómo controlar gradientes, transformaciones y animaciones en la interfaz

En esta lección vas a aprender cómo CSS maneja el espacio visual mediante ejes, cómo se aplican gradientes lineales y radiales, y cómo transformar, animar y suavizar cambios en los elementos. Estos conceptos son clave para crear interfaces modernas, dinámicas y visualmente claras sin romper el layout ni la estructura del documento.

Ejes, gradientes y transformaciones aplicadas a elementos CSS
Los efectos visuales en CSS se basan en ejes, fondos y transformaciones.
1

Sistema de ejes en el espacio visual

Antes de aplicar gradientes o transformaciones, es fundamental entender cómo se posicionan los elementos en pantalla. El sistema de ejes define direcciones horizontales, verticales y de profundidad dentro del navegador.

Representación del sistema de ejes X, Y y Z en un elemento HTML
Los ejes definen cómo se orientan y mueven los elementos en pantalla.
2

Ejes X, Y y Z en CSS

CSS trabaja principalmente en dos dimensiones, pero incorpora el eje Z para simular profundidad. Comprender estas direcciones permite aplicar gradientes, transformaciones y animaciones de forma controlada.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estilo base del elemento visible */
.box {
  width: 300px; /* Ancho del elemento en el eje X */
  height: 120px; /* Alto del elemento en el eje Y */
  background-color: #eaeaea; /* Color neutro para visualizar el área */
  transform: translateZ(0); /* Posición inicial sobre el eje Z */
}
Direcciones de los ejes X horizontal, Y vertical y Z profundidad
X se mueve de izquierda a derecha, Y de arriba hacia abajo y Z hacia adelante o atrás.
3

Elemento base para aplicar gradientes

Los gradientes se aplican sobre fondos de elementos. Para entender su comportamiento, primero se define una estructura HTML simple que servirá como superficie visual del degradado.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Contenedor que recibirá el gradiente de fondo -->
<div class="gradient-box">
  Texto de ejemplo dentro del contenedor
</div>
4

Gradiente lineal por defecto

Un gradiente lineal en CSS genera una transición progresiva entre colores. Si no se indica una dirección, el degradado avanza automáticamente desde la parte superior hacia la inferior del elemento.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estilo del contenedor con gradiente lineal */
.gradient-box {
  width: 100%; /* Ocupa todo el ancho disponible */
  height: 120px; /* Altura visible del gradiente */
  background-image: linear-gradient(red, yellow);
  /* Al no indicar dirección, el gradiente va de arriba hacia abajo */
}
Gradiente lineal vertical aplicado por defecto en CSS
El degradado comienza arriba y termina abajo si no se especifica dirección.
5

Dirección horizontal del gradiente

CSS permite controlar hacia dónde avanza un gradiente. Al definir una dirección horizontal, los colores se distribuyen de un lado al otro del elemento siguiendo el eje X.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento visual para un gradiente horizontal -->
<div class="gradient-horizontal"></div>
6

Gradiente lineal hacia la derecha

Indicando explícitamente la dirección, el gradiente se orienta según el eje seleccionado. En este caso, la transición de color avanza de izquierda a derecha.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Gradiente orientado hacia la derecha */
.gradient-horizontal {
  width: 100%;
  height: 120px;
  background-image: linear-gradient(to right, red, yellow);
  /* 'to right' indica avance sobre el eje X positivo */
}
Gradiente lineal de izquierda a derecha en CSS
El rojo inicia a la izquierda y se transforma en amarillo hacia la derecha.
7

Introducción a los gradientes radiales

A diferencia de los gradientes lineales, los gradientes radiales distribuyen los colores desde un punto central hacia afuera, formando círculos o elipses concéntricas.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Contenedor para visualizar un gradiente radial -->
<div class="gradient-radial"></div>
Publicidad
htmlCssOnlineCourseResponsiveWebDesignFromScratch
Aprendé desde cero con clases 100% en vivo, grupos súper reducidos y acompañamiento real. Todo el contenido está diseñado y dictado por el creador de la plataforma, para que aprendas de verdad, sin videos fríos ni cursos masivos.

Curso de HTML y CSS para Frontend

Dominá las bases de la programación frontend: estructura con HTML, estilos modernos con CSS y diseño rápido con Tailwind para lanzar tus primeros sitios responsivos y profesionales.10 clases en vivo con profesores expertos
Precio $150000 ARG Oferta especialDisponible por 0 Días y 00:00:00 Hs
Ver próximas fechas
8

Gradiente radial circular

El gradiente radial puede adoptar forma circular o elíptica. Al indicar 'circle', la transición de color se expande de manera uniforme desde el centro del elemento.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Gradiente radial con forma circular */
.gradient-radial {
  width: 200px;
  height: 200px;
  background-image: radial-gradient(circle, red, gold);
  /* El color rojo nace en el centro y se expande hacia afuera */
}
Gradiente radial circular aplicado en CSS
Los colores se distribuyen en círculos concéntricos.
9

Gradiente radial elíptico

Cuando el contenedor no es cuadrado o se define un tamaño específico, el gradiente radial adopta forma elíptica, permitiendo composiciones visuales más flexibles.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento rectangular para gradiente elíptico -->
<div class="gradient-ellipse"></div>
10

Control del tamaño en gradientes radiales

CSS permite definir el tamaño exacto del gradiente radial. Esto brinda mayor control visual sobre cómo se distribuyen los colores dentro del elemento.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Gradiente radial elíptico con tamaño definido */
.gradient-ellipse {
  width: 300px;
  height: 180px;
  background-image: radial-gradient(ellipse 250px 100px, lightgreen, darkslateblue);
  /* Se especifica el ancho y alto de la elipse del gradiente */
}
Gradiente radial elíptico con tamaño personalizado
Definir dimensiones permite controlar la intensidad y alcance del color.
11

Qué son las transformaciones en CSS

Las transformaciones permiten modificar visualmente un elemento sin alterar el espacio que ocupa en el layout. Se utilizan para mover, escalar, rotar o simular profundidad, manteniendo intacto el flujo del documento.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento base que será transformado con CSS -->
<div class="box">
  Elemento transformable
</div>
12

La propiedad transform

CSS aplica las transformaciones mediante la propiedad transform. Esta propiedad acepta distintas funciones que modifican el elemento visualmente sin reordenar los elementos vecinos.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estilo base del elemento */
.box {
  width: 150px; /* Ancho visible */
  height: 150px; /* Alto visible */
  background-color: red; /* Color para identificar el elemento */
  transform: none; /* Estado inicial sin transformación */
}
Uso de la propiedad transform en CSS
transform centraliza todas las transformaciones visuales.
13

Preparando un elemento para moverlo

Para entender cómo se desplazan los elementos, primero se define una estructura HTML simple. El movimiento se realizará únicamente a nivel visual mediante transformaciones.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Caja que se moverá visualmente con translate -->
<div class="move-box"></div>
Publicidad
htmlCssOnlineCourseResponsiveWebDesignFromScratch
Aprendé desde cero con clases 100% en vivo, grupos súper reducidos y acompañamiento real. Todo el contenido está diseñado y dictado por el creador de la plataforma, para que aprendas de verdad, sin videos fríos ni cursos masivos.

Curso de HTML y CSS para Frontend

Dominá las bases de la programación frontend: estructura con HTML, estilos modernos con CSS y diseño rápido con Tailwind para lanzar tus primeros sitios responsivos y profesionales.10 clases en vivo con profesores expertos
Precio $150000 ARG Oferta especialDisponible por 0 Días y 00:00:00 Hs
Ver próximas fechas
14

translate(): mover elementos

La función translate() desplaza un elemento según los ejes X e Y. Recibe dos valores con unidades y permite mover visualmente el elemento sin modificar su posición original.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Desplazamiento visual del elemento */
.move-box {
  width: 120px;
  height: 120px;
  background-color: red;
  transform: translate(10px, 20px);
  /* Primer valor: eje X (derecha/izquierda) */
  /* Segundo valor: eje Y (abajo/arriba) */
}
Elemento desplazado con transform translate
Valores positivos mueven derecha y abajo.
15

Elemento para rotación

Antes de rotar un elemento, se define una caja visible que permita apreciar claramente el giro. La rotación se realiza alrededor de su propio centro.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento que será rotado -->
<div class="rotate-box"></div>
16

rotate(): girar elementos

La función rotate() permite girar un elemento según un ángulo en grados. Los valores positivos rotan en sentido horario y los negativos en sentido antihorario.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Rotación del elemento */
.rotate-box {
  width: 120px;
  height: 120px;
  background-color: red;
  transform: rotate(360deg);
  /* deg representa grados de rotación */
}
Elemento rotado usando transform rotate
Un giro completo equivale a 360 grados.
17

Rotaciones en el eje X

Las transformaciones 3D permiten rotar elementos sobre ejes espaciales. rotateX() genera una rotación vertical que simula profundidad.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Caja para rotación sobre eje X -->
<div class="rotate-x"></div>
Elemento preparado para rotateX
La rotación se percibe como un giro vertical.
18

rotateX(): rotar en X

rotateX() gira el elemento sobre el eje horizontal. Este tipo de transformación se usa frecuentemente junto a perspectiva para reforzar el efecto tridimensional.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Rotación tridimensional en eje X */
.rotate-x {
  width: 120px;
  height: 120px;
  background-color: red;
  transform: rotateX(70deg);
  /* El ángulo define la intensidad del giro */
}
Rotación 3D sobre el eje X
El elemento parece inclinarse hacia adelante o atrás.
19

Rotaciones en el eje Y

rotateY() permite girar un elemento sobre el eje vertical. Este efecto genera una sensación de giro lateral, común en tarjetas o carruseles.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento para rotación en eje Y -->
<div class="rotate-y"></div>
Elemento HTML listo para rotateY
El giro ocurre de izquierda a derecha.
20

rotateY(): rotar en Y

Con rotateY() el elemento rota sobre el eje vertical. Es una transformación tridimensional que suele combinarse con animaciones para mejorar la experiencia visual.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Rotación en eje Y */
.rotate-y {
  width: 120px;
  height: 120px;
  background-color: red;
  transform: rotateY(70deg);
}
Rotación tridimensional sobre eje Y
Simula un giro lateral del elemento.
21

Rotaciones en el eje Z

rotateZ() rota el elemento sobre el eje perpendicular a la pantalla. Visualmente equivale a una rotación 2D tradicional.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento para rotación en eje Z -->
<div class="rotate-z"></div>
Elemento HTML para rotación en eje Z
Este eje apunta hacia el usuario.
22

rotateZ(): rotar en Z

rotateZ() permite girar un elemento como si se tratara de un plano. Es equivalente a rotate(), pero mantiene coherencia con transformaciones 3D.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Rotación en eje Z */
.rotate-z {
  width: 120px;
  height: 120px;
  background-color: red;
  transform: rotateZ(90deg);
}
Rotación en eje Z con CSS
El elemento gira como un plano frontal.
23

Preparando un elemento para escalar

Para analizar cómo funciona el escalado en CSS, primero definimos un elemento simple con dimensiones visibles. El cambio de tamaño se realizará únicamente a nivel visual, sin alterar el flujo del documento.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Caja base que será escalada -->
<div class="scale-box"></div>
Elemento HTML base preparado para aplicar scale
El escalado afecta solo la apariencia del elemento.
24

scale(): escalar elementos

La función scale() permite aumentar o reducir el tamaño de un elemento. Puede recibir uno o dos valores que representan el factor de escala horizontal y vertical respectivamente.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Escalado del elemento */
.scale-box {
  width: 100px;
  height: 100px;
  background-color: red;
  transform: scale(2, 1);
  /* Primer valor: escala en eje X (ancho) */
  /* Segundo valor: escala en eje Y (alto) */
}
Elemento escalado horizontalmente con transform scale
Un valor mayor a 1 agranda, menor a 1 reduce.
25

Introducción al sesgado de elementos

El sesgado permite deformar visualmente un elemento inclinando sus lados. Esta transformación se utiliza para generar efectos dinámicos o estilizados sin modificar la estructura del layout.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento base para aplicar skew -->
<div class="skew-box"></div>
Elemento HTML preparado para aplicar skew
El sesgado deforma el elemento visualmente.
26

skew(): deformar en ambos ejes

La función skew() inclina el elemento sobre los ejes X e Y. Recibe hasta dos valores en grados que determinan el nivel de deformación en cada eje.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Sesgado del elemento en ambos ejes */
.skew-box {
  width: 100px;
  height: 100px;
  background-color: red;
  transform: skew(20deg, 10deg);
  /* Primer valor: deformación en eje X */
  /* Segundo valor: deformación en eje Y */
}
Elemento deformado usando transform skew
Los ángulos determinan la inclinación del elemento.
27

Sesgado sobre un solo eje

CSS permite aplicar el sesgado de forma individual sobre cada eje. Esto brinda mayor control cuando se necesita una deformación direccional específica.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento para sesgado individual -->
<div class="skew-x-box"></div>
<div class="skew-y-box"></div>
Elementos HTML preparados para skewX y skewY
Cada eje puede deformarse de manera independiente.
28

skewX() y skewY()

Las funciones skewX() y skewY() deforman el elemento en un solo eje. Se utilizan cuando se busca un efecto controlado sin alterar ambos sentidos.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Sesgado horizontal */
.skew-x-box {
  width: 100px;
  height: 100px;
  background-color: red;
  transform: skewX(20deg);
}

/* Sesgado vertical */
.skew-y-box {
  width: 100px;
  height: 100px;
  background-color: red;
  transform: skewY(20deg);
}
Ejemplo de skewX y skewY en CSS
Cada función actúa sobre un eje específico.
29

Ejemplo completo de sesgado

Para cerrar el concepto, retomamos un ejemplo simple que combina tamaño, color y sesgado. Esto permite visualizar claramente cómo actúa skewY sobre un elemento básico.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Caja roja para ejemplo final -->
<div class="final-box"></div>
Caja HTML utilizada en ejemplo final de skew
Un ejemplo simple ayuda a fijar el concepto.
30

Aplicando skew en un caso real

En este ejemplo final se observa cómo un elemento rectangular puede deformarse verticalmente usando skewY, manteniendo su posición original dentro del layout.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estilo del ejemplo final */
.final-box {
  width: 100px;
  height: 100px;
  background-color: rgba(255, 0, 0, 0.9);
  transform: skewY(25deg);
  /* El sesgado vertical inclina los laterales del elemento */
}
Elemento sesgado verticalmente con skewY
El sesgado modifica la forma sin mover el elemento.
31

Introducción a las transiciones

Las transiciones permiten suavizar los cambios de estilo en CSS. En lugar de aplicar un cambio inmediato, el navegador interpola los valores creando una animación simple y controlada.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento base para aplicar transición -->
<div class="transition-box">
  Contenido
</div>
Elemento HTML sin transición aplicada
Las transiciones suavizan los cambios visuales.
32

La propiedad transition

La propiedad transition indica qué estilo debe animarse y durante cuánto tiempo. Se activa cuando una propiedad cambia, por ejemplo al interactuar con el elemento mediante hover.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estado inicial del elemento */
.transition-box {
  height: 100px;
  background-color: yellow;
  transition: height 2s;
  /* Se anima la propiedad height durante 2 segundos */
}

/* Estado al pasar el mouse */
.transition-box:hover {
  height: 200px;
}
Transición de altura aplicada con hover
El cambio de altura ocurre de forma progresiva.
33

Transición con múltiples propiedades

CSS permite animar más de una propiedad al mismo tiempo. Cada una puede tener su propia duración, lo que brinda mayor control sobre el comportamiento visual.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento con cambios múltiples -->
<div class="multi-transition">
  Contenido
</div>
Elemento HTML para múltiples transiciones
Un mismo elemento puede animar varias propiedades.
34

Animar varias propiedades

Al separar propiedades por coma, se definen distintas transiciones. Esto permite que cada cambio tenga una duración diferente según el efecto deseado.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estado base */
.multi-transition {
  width: 100px;
  height: 100px;
  background-color: yellow;
  transition: height 2s, width 1s;
}

/* Estado hover */
.multi-transition:hover {
  width: 200px;
  height: 200px;
}
Transición simultánea de ancho y alto
Cada propiedad puede animarse con su propio tiempo.
35

Aplicar transición a todos los cambios

Cuando no se especifica una propiedad concreta, la transición se aplica a cualquier estilo que varíe. Esto simplifica el código, pero debe usarse con criterio.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento con transición global -->
<div class="all-transition">
  Contenido
</div>
Elemento HTML con transición global
Cualquier cambio será animado automáticamente.
36

transition aplicada a todas las propiedades

Usando solo un valor de tiempo, CSS interpreta que todas las propiedades animables deben transicionar con la misma duración.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estado inicial */
.all-transition {
  width: 100px;
  height: 100px;
  background-color: yellow;
  transition: 2s;
}

/* Estado hover */
.all-transition:hover {
  width: 200px;
  height: 200px;
  padding: 20px;
  background-color: cyan;
}
Varias propiedades animadas con transition global
Todos los cambios se animan en el mismo tiempo.
37

Transiciones sin hover

Las transiciones no dependen exclusivamente de hover. Cualquier pseudoclase que genere un cambio de estilo puede activar una transición, como focus en campos de formulario.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Campo de entrada para ejemplo con focus -->
<input type="text" placeholder="Escribí acá" />
Input HTML preparado para transición con focus
El foco también dispara transiciones.
38

Transiciones con :focus

Cuando un input recibe foco, sus estilos cambian. Si existe una transición definida, el navegador anima esos cambios de forma automática.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estado base del input */
input {
  width: 100px;
  height: 40px;
  transition: all 2s;
}

/* Estado al recibir foco */
input:focus {
  width: 200px;
  font-size: 24px;
}
Transición activada por focus en input
El foco activa cambios animados.
39

Ejemplo integrado con transform

Las transiciones suelen combinarse con transformaciones. Esto permite animar rotaciones, escalados o sesgados de forma fluida al interactuar con el elemento.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Caja base para ejemplo final -->
<div class="combo-box"></div>
Elemento HTML para transición y transformación
Las transiciones mejoran el impacto visual.
40

Transición aplicada a transform

En este ejemplo se observa cómo una transformación puede animarse suavemente gracias a transition. El elemento se deforma progresivamente al pasar el mouse.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Estado inicial */
.combo-box {
  width: 100px;
  height: 100px;
  background-color: rgba(255, 0, 0, 0.9);
  border: solid 1px;
  transition: transform 1s;
}

/* Estado hover */
.combo-box:hover {
  padding: 20px;
  transform: skewY(25deg);
}
Transformación animada mediante transition
Transition suaviza el cambio de transform.
41

Introducción a las animaciones

Las animaciones en CSS permiten crear efectos que se ejecutan automáticamente y pueden repetirse en bucle. A diferencia de las transiciones, no dependen de un evento de interacción como hover.

42

¿Cómo funciona una animación?

Una animación está compuesta por dos partes fundamentales: una línea de tiempo que define los cambios y un elemento al cual se le aplica esa animación mediante propiedades CSS.

43

Línea de tiempo: @keyframes

La línea de tiempo se define con la regla @keyframes. Dentro de ella se especifican los momentos en los que el CSS cambia, usando porcentajes que representan el progreso de la animación.

44

Definiendo una animación

Dentro de @keyframes se indican los estilos que el elemento tendrá en distintos momentos. El navegador interpola los valores para generar un cambio progresivo.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Definición de la línea de tiempo */
@keyframes un_efecto {
  0% { width: 100px; }
  10% { width: 50px; }
  25% { width: 300px; }
  50% {
    width: 200px;
    background-color: red;
  }
  75% { width: 300px; }
  100% {
    width: 100px;
    background-color: green;
  }
}
Ejemplo de keyframes con porcentajes
Los cambios ocurren de forma gradual.
45

Aplicar una animación a un elemento

Una vez definida la línea de tiempo, se aplica al elemento usando propiedades animation. Allí se controla duración, repetición, retraso y función de aceleración.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Elemento animado */
section {
  width: 100px;
  height: 100px;
  background-color: green;
  animation-name: un_efecto;
  animation-duration: 2s;
  animation-delay: 10s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in;
}
Aplicación de animación con propiedades
Las propiedades controlan el comportamiento.
46

Ejemplo base animado

En este ejemplo visual se observa un elemento que cambia sus propiedades de manera continua, demostrando cómo una animación se ejecuta en bucle sin interacción del usuario.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Elemento que se animará -->
<div class="animate"></div>
Ejemplo visual de animación continua
La animación se ejecuta automáticamente.
47

Animación combinada con transform

Las animaciones pueden modificar transformaciones como skew, rotate o scale. Esto permite crear efectos visuales complejos de forma fluida y controlada.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Definición de animación */
@keyframes animacion {
  from { }
  to {
    transform: skewY(25deg);
  }
}

/* Configuración inicial */
.animame {
  animation: animacion 1s linear 3s infinite alternate;
}
Animación aplicada a transform
Transform también puede animarse.
48

HTML del ejemplo animado

El HTML para una animación suele ser simple. El comportamiento dinámico se controla completamente desde CSS mediante keyframes y propiedades animation.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
<!-- Caja base -->
<div></div>

<!-- Caja animada -->
<div class="animame"></div>
HTML mínimo para animación CSS
La animación vive en el CSS.
49

Animaciones aplicadas a texto

Las animaciones no se limitan a contenedores. También pueden aplicarse a texto, permitiendo efectos como aparición gradual, parpadeo o cambios de opacidad.

Copiar con comentariosCopiado
Copiar sin comentariosCopiado
/* Texto animado */
h1 {
  animation-name: aparecer;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

@keyframes aparecer {
  0% { opacity: 0; }
  100% { opacity: 1; }
}
Animación de opacidad en texto
El texto también puede animarse.

Leccion Anterior

Ejemplos de pseudoclases CSS aplicadas a enlaces y contenedores
Las pseudoclases permiten definir estilos según estado, exclusión y posición.

Pseudoclases CSS

En esta lección vas a aprender cómo funcionan las pseudoclases CSS y por qué son fundamentales para crear interfaces más claras, interactivas y mantenibles. Vas a ver cómo estilizar enlaces según su estado, excluir elementos específicos de una regla general y aplicar estilos basados en la posición dentro del DOM, todo sin agregar clases extra ni modificar la estructura HTML.

Comenzar Lección

Leccion Actual

Ejes, gradientes y transformaciones aplicadas a elementos CSS
Los efectos visuales en CSS se basan en ejes, fondos y transformaciones.

Efectos visuales y movimiento con CSS

En esta lección vas a aprender cómo CSS maneja el espacio visual mediante ejes, cómo se aplican gradientes lineales y radiales, y cómo transformar, animar y suavizar cambios en los elementos. Estos conceptos son clave para crear interfaces modernas, dinámicas y visualmente claras sin romper el layout ni la estructura del documento.

Comenzar Lección

Lecciones Siguiente

Diseño de barra de navegación responsive mostrándose en laptop y celular con menú hamburguesa
Vista previa del proyecto final: una barra de navegación que conserva su estética en escritorio y transforma su funcionalidad en móviles mediante CSS puro.

Cómo crear un Navbar Responsive solo con HTML y CSS

Aprende a maquetar una barra de navegación que se adapta a todos los dispositivos. Tutorial paso a paso utilizando Flexbox y Media Queries, sin necesidad de usar JavaScript.

Comenzar Lección
¿Qué es el sistema de ejes X, Y y Z en CSS?Es el marco de referencia que usa el navegador para posicionar y transformar elementos. X controla el ancho horizontal, Y la altura vertical y Z simula profundidad visual mediante transformaciones.
¿Para qué sirve entender los ejes antes de usar gradientes o transformaciones?Permite predecir direcciones, movimientos y resultados visuales. Sin comprender los ejes, es común aplicar gradientes o transformaciones con efectos inesperados o difíciles de mantener.
¿Qué es un gradiente lineal en CSS?Es una transición progresiva entre colores aplicada al fondo de un elemento. Por defecto fluye de arriba hacia abajo, pero puede orientarse en cualquier dirección del eje X o Y.
¿Cuál es la dirección por defecto de un linear-gradient?Si no se indica dirección, el gradiente avanza desde la parte superior hacia la inferior del elemento, siguiendo el eje Y positivo del sistema de coordenadas del navegador.
¿Cómo funciona un gradiente lineal horizontal en CSS?Distribuye los colores de izquierda a derecha o viceversa siguiendo el eje X. Se controla indicando direcciones como to right o to left en la función linear-gradient.
¿Qué diferencia hay entre gradientes lineales y radiales?Los lineales avanzan en una dirección recta, mientras que los radiales parten desde un punto central y se expanden hacia afuera en forma circular o elíptica.
¿Qué es un gradiente radial circular?Es un gradiente que se expande uniformemente desde el centro formando círculos concéntricos. Se define usando la palabra clave circle dentro de radial-gradient.
¿Por qué un gradiente radial puede verse elíptico?La forma del contenedor influye directamente. Cuando el elemento no es cuadrado o se define un tamaño específico, el gradiente se adapta y adopta forma elíptica.
¿Para qué sirve controlar el tamaño de un gradiente radial?Permite definir hasta dónde se extienden los colores y con qué intensidad, logrando mayor control visual y composiciones más precisas dentro del fondo del elemento.
¿Qué son las transformaciones en CSS?Son modificaciones visuales que alteran la apariencia de un elemento sin afectar el layout. Permiten mover, rotar, escalar o deformar sin cambiar el flujo del documento.
¿Para qué sirve la propiedad transform?Centraliza todas las transformaciones visuales de un elemento. Acepta funciones como translate, rotate, scale o skew que modifican el elemento sin reordenar otros.
¿Cómo funciona translate() en CSS?Desplaza visualmente un elemento en los ejes X e Y usando valores con unidades. El movimiento no modifica su posición real ni afecta a los elementos vecinos.
¿Cuál es la diferencia entre rotate y rotateZ?rotateZ es equivalente a rotate, pero mantiene coherencia conceptual dentro de transformaciones 3D. Ambos giran el elemento sobre el eje perpendicular a la pantalla.
¿Para qué se usan rotateX y rotateY?Permiten rotaciones tridimensionales sobre los ejes horizontal y vertical. Se usan para simular profundidad y efectos de giro espacial en interfaces modernas.
¿Qué hace la función scale en CSS?Modifica el tamaño visual de un elemento ampliándolo o reduciéndolo. Puede escalar de forma uniforme o independiente en los ejes X e Y sin afectar el layout.
¿Qué es el sesgado o skew en CSS?Es una transformación que inclina los lados de un elemento deformándolo visualmente. Se usa para efectos estilizados sin alterar la estructura del documento.
¿Cuál es la diferencia entre skew, skewX y skewY?skew actúa sobre ambos ejes, mientras que skewX y skewY deforman solo uno. Esto permite un control más preciso sobre la dirección del sesgado.
¿Qué son las transiciones en CSS?Permiten animar suavemente cambios de estilo cuando una propiedad varía. El navegador interpola valores en el tiempo en lugar de aplicar el cambio de forma instantánea.
¿Cuándo no se recomienda usar transition en todas las propiedades?Puede generar animaciones innecesarias y afectar el rendimiento. Es mejor limitarla a propiedades específicas para mantener control y facilitar el mantenimiento.
¿Cuál es la diferencia entre transiciones y animaciones en CSS?Las transiciones dependen de un cambio de estado, mientras que las animaciones se ejecutan automáticamente usando keyframes y pueden repetirse sin interacción.

Información de cursos

Completá el formulario y recibí detalles sobre contenidos, fechas, niveles y promociones disponibles.

Completá el formulario para mantenerte informado. 👉