es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Amine JS centra un elemento.

Estoy tratando de hacer un portafolio.
Mi introducción tiene un DOM como este:

html
        <div className={clsx("inline-flex", "items-center",
          "space-x-4")}>
          <div id="logo" className={"flex"}>
            <LoaderIcon isOnLoader={true}/>
          </div>
          <div className={"flex flex-col"} id={"title_container"}>
            <div id="subtitle" className={"text-neon-violet"}>
              {descriptionSmall}
            </div>
            <div id={"title"} className={"text-neon-violet text-4xl tracking-tighter"}>
              {title}
            </div>
          </div>
        </div>

En la animación, estoy reduciendo el tamaño de #title_container a 0 usando:

js
loader.add({
        targets: "#title_container",
        duration: 800,
        easing: 'easeInOutQuart',
        scale: 0,
      })

El #title_container desaparece, pero el #logo permanece en el mismo lugar.

Quiero que la animación sea como si el título se estuviera encogiendo y el logo se estuviera centrando al mismo tiempo.

Por favor, ayúdame con esto. Gracias.

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Para hacer que el logo se centre mientras que el contenedor de título se reduce, puedes utilizar la propiedad translateX de anime.js. Aquí está el código actualizado:

    loader.add({
      targets: "#title_container",
      duration: 800,
      easing: 'easeInOutQuart',
      scale: 0,
    });
    
    loader.add({
      targets: "#logo",
      duration: 800,
      easing: 'easeInOutQuart',
      translateX: "-50%",
    });
    

    El translateX: "-50%" anima al logo para que se desplace hacia la izquierda en un 50% de su ancho, centrándolo efectivamente. Es posible que debas ajustar el valor de translateX dependiendo del ancho de tu logo.

    ¡Espero que esto ayude! Avísame si tienes alguna otra pregunta.

Comments are closed.