"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo crear una animación CSS suave de izquierda-derecha para un DIV dentro de su contenedor?

¿Cómo crear una animación CSS suave de izquierda-derecha para un DIV dentro de su contenedor?

Publicado el 2025-03-25
Navegar:724

How to Create a Smooth Left-Right CSS Animation for a Div Within Its Container?

animación CSS genérica para el movimiento de derecha izquierda

En este artículo, exploraremos la creación de una animación genérica de CSS para mover un DIV a la izquierda y a la derecha, alcanzando los bordes de su contenedor. Esta animación se puede aplicar a cualquier división con posicionamiento absoluto, independientemente de su longitud desconocida.

El problema: usar la izquierda directamente provoca una desaparición momentánea

inicialmente, usando la izquierda a 0% y 100% puede hacer que el Div desaparezca momentáneamente mientras se mueve. Esto se debe a que al 100%, la propiedad de la izquierda del DIV sobrepasa el ancho del contenedor, lo que lleva a un valor negativo y una posición fuera de la pantalla.

una solución más fluida: mezclar transformación y izquierda

para abordar este problema y lograr un movimiento lineal y suave, introducimos transformación. Esto nos permite mover el DIV en relación a su posición actual, asegurando que no sobrepase los límites del contenedor.

Aquí hay una versión actualizada de la animación usando transformación:

@keyframes destraSinistra {
  0% {
    left: 0;
  }
  100% {
    left: 100%;
    transform: translateX(-100%);
  }
}

#div1 {
  /* ... */
  animation: destraSinistra 1s linear infinite alternate;
}

En este código, el fotograma clave al 100% utiliza tanto a la izquierda como a la transformación. La izquierda mueve el DIV al borde derecho, mientras que la transformación lo traduce a la izquierda para compensar el sobreimpulso. Esta combinación evita efectivamente que el DIV salga fuera de la pantalla.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3