Códigos para usar no Elementor

Apesar da vasta gama de recursos que o Elementor oferece, muitas vezes precisamos recorrer ao poder do CSS para implementar efeitos visuais únicos e tornar nossos sites ainda mais atraentes para a audiência. Neste guia prático, separei 8 scripts de movimento em CSS que, sem dúvida, irão embelezar suas páginas construídas com Elementor.

Utilizando CSS Personalizado no Elementor

Uma das grandes vantagens do Elementor é a possibilidade de inserir CSS personalizado diretamente no editor. Portanto, você pode aproveitar essa funcionalidade para aplicar estilos específicos que não estão disponíveis nas opções padrão do plugin.

Entendendo a Base das Animações em CSS

Para criar essas animações, utilizamos principalmente a propriedade animation, que permite aplicar a animação a um elemento HTML. Ademais, a função cubic-bezier() é fundamental para definir a curva de aceleração dessa animação, controlando o ritmo e a suavidade do efeito. Além disso, a classe .infinite pode ser adicionada à animação para que ela se repita continuamente, criando um efeito constante.

Vamos aos Códigos de Animação!

1. Animação de Rotação Infinita

CSS

 
#elemento {
  animation: spin 1s ease-in-out infinite;
}
@keyframes spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

Em resumo, este código CSS fará com que o elemento HTML com o ID #elemento execute uma rotação completa de 360 graus de forma contínua.

2. Animação de Mudança de Cor Contínua

CSS

 
#elemento {
  animation: color-change 1s ease-in-out infinite;
}
@keyframes color-change {
  0% { background-color: red; }
  50% { background-color: blue; }
  100% { background-color: green; }
}

Similarmente, este snippet de CSS animará a cor de fundo do elemento #elemento, alternando entre vermelho, azul e verde em um ciclo infinito.

3. Animação de Transição de Escala Sem Fim

CSS

 
#elemento {
  animation: scale 1s ease-in-out infinite;
}
@keyframes scale {
  0% { transform: scale(1); }
  50% { transform: scale(1.5); }
  100% { transform: scale(1); }
}

Por outro lado, este código aplicará uma animação de escala ao elemento #elemento, fazendo-o aumentar e diminuir de tamanho repetidamente.

4. Animação de Desvanecimento Progressivo (Fade In/Out)

CSS

 
#elemento {
  animation: fade 1s ease-in-out infinite;
}
@keyframes fade {
  0% { opacity: 1; }
  50% { opacity: 0.5; }
  100% { opacity: 1; }
}

Consequentemente, o elemento #elemento terá sua opacidade alterada, criando um efeito de desvanecimento que se repete infinitamente.

5. Animação de Transição de Posição Horizontal Constante

CSS

 
#elemento {
  animation: move 1s ease-in-out infinite;
}
@keyframes move {
  0% { transform: translateX(0); }
  50% { transform: translateX(50px); }
  100% { transform: translateX(0); }
}

Nesse caso, o elemento #elemento se moverá horizontalmente 50 pixels para a direita e retornará à sua posição inicial em um loop contínuo.

6. Animação de Pulsar Suave

CSS

 
.pulse {
  animation: pulse 2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.2);
  }
  100% {
    transform: scale(1);
  }
}

Aqui, a classe .pulse pode ser aplicada a qualquer elemento HTML para criar um efeito de pulsação suave e contínuo, utilizando a função cubic-bezier para uma aceleração mais orgânica.

7. Animação de Tremor Sutil

CSS

 
.shake {
  animation: shake 0.5s cubic-bezier(.36,.07,.19,.97) infinite;
}
@keyframes shake {
  0% {
    transform: translate(0);
  }
  10%, 90% {
    transform: translate(-5px, 0);
  }
  20%, 80% {
    transform: translate(5px, 0);
  }
  30%, 50%, 70% {
    transform: translate(-5px, 0);
  }
  40%, 60% {
    transform: translate(5px, 0);
  }
  100% {
    transform: translate(0);
  }
}

Similarmente, a classe .shake proporcionará um efeito de tremor horizontal sutil e repetitivo ao elemento HTML aplicado, também com uma curva de aceleração personalizada.

8. Animação de Aparecimento Gradual com Delay

CSS

 
#meuElemento {
  opacity: 0;
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-delay: 5s;
  animation-fill-mode: forwards;
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

Finalmente, este código fará com que o elemento com o ID #meuElemento apareça gradualmente (fade in) após um atraso de 5 segundos. A propriedade animation-fill-mode: forwards; garante que o elemento permaneça visível ao final da animação.

Conclusão

Em suma, a combinação do poder do Elementor com a flexibilidade do CSS abre um leque de possibilidades para criar animações incríveis e personalizadas para o seu site. Experimente esses scripts e explore as diversas propriedades do CSS para levar o design do seu site a um novo nível!