CodeGym /Curso Java /Frontend SELF PT /Animações para melhorar o UX

Animações para melhorar o UX

Frontend SELF PT
Nível 24 , Lição 3
Disponível

9.1 Animações ao passar o mouse (Hover Effects)

As animações desempenham um papel importante na melhoria da experiência do usuário (UX) em sites. Elas podem direcionar a atenção do usuário, fornecer feedback, melhorar a navegação e tornar as interfaces mais intuitivas e agradáveis de usar. Agora vamos ver exemplos de como usar animações para melhorar o UX.

Exemplo: Animação de botão ao passar o mouse

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Animação de botão ao passar o mouse</title>
          <style>
            .button {
              padding: 10px 20px;
              background-color: #3498db;
              color: white;
              border: none;
              cursor: pointer;
              transition: background-color 0.3s ease, transform 0.3s ease;
            }

            .button:hover {
              background-color: #2980b9;
              transform: scale(1.1);
            }
          </style>
        </head>
        <body>
          <button class="button">Hover me</button>
        </body>
      </html>
    
  

Explicação do código:

  • .button: define os estilos para o botão, incluindo transições suaves para alteração de fundo e escala ao passar o mouse
  • .button:hover: ao passar o cursor, a cor de fundo do botão muda e ele aumenta um pouco de tamanho

9.2 Animações de carregamento (Loading Animations)

Animações de carregamento mostram aos usuários que o processo de carregamento ou processamento de dados está em andamento, o que ajuda a diminuir a sensação de espera.

Exemplo: Animação de carregamento

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Animação de carregamento</title>
          <style>
            .spinner {
              width: 50px;
              height: 50px;
              border: 5px solid #f3f3f3;
              border-top: 5px solid #3498db;
              border-radius: 50%;
              animation: spin 1s linear infinite;
            }

            @keyframes spin {
              0% {
                transform: rotate(0deg);
              }

              100% {
                transform: rotate(360deg);
              }
            }
          </style>
        </head>
        <body>
          <div class="spinner"></div>
        </body>
      </html>
    
  

Explicação do código:

  • .spinner: define os estilos para o spinner, incluindo bordas e animação de rotação
  • @keyframes spin: define a animação de rotação do spinner de 0 a 360 graus

9.3 Animações de transição de página (Page Transition Animations)

Animações de transição entre páginas ou seções de um aplicativo ajudam os usuários a se orientar e criam uma experiência de interação mais suave.

Exemplo: Animação de transição de página

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Animação de transição de página</title>
          <style>
            .page {
              opacity: 0;
              transform: translateY(20px);
              transition: opacity 0.5s ease, transform 0.5s ease;
            }

            .page.active {
              opacity: 1;
              transform: translateY(0);
            }
          </style>
        </head>
        <body>
          <div class="page">Content of the page</div>
          <script>
            document.addEventListener('DOMContentLoaded', function() {
              document.querySelector('.page').classList.add('active');
            });
          </script>
        </body>
      </html>
    
  

Explicação do código:

  • .page: define os estilos para a página, incluindo opacidade inicial e deslocamento para baixo
  • .page.active: ao adicionar a classe active, a página se torna totalmente visível e retorna à posição inicial
  • JavaScript: ao carregar a página, o script adiciona a classe active ao elemento .page, iniciando a animação

9.4 Animações de clique (Click Animations)

Animações ao clicar em elementos podem melhorar o feedback para os usuários e tornar a interação mais divertida.

Exemplo: Animação de clique no botão

HTML
    
      <!DOCTYPE html>
      <html lang="en">
        <head>
          <meta charset="UTF-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0">
          <title>Animação de clique no botão</title>
          <style>
            .button {
              padding: 10px 20px;
              background-color: #e74c3c;
              color: white;
              border: none;
              cursor: pointer;
              transition: transform 0.1s ease;
            }

            .button:active {
              transform: scale(0.95);
            }
          </style>
        </head>
        <body>
          <button class="button">Click me</button>
        </body>
      </html>
    
  

Explicação do código:

  • .button: define os estilos para o botão, incluindo transição suave para escala
  • .button:active: ao clicar no botão, o elemento diminui um pouco, criando um efeito de pressão
Comentários
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION