• Home

    Escolha seu Plano

    Carreiras Alura

    Evolua com profundidade técnica, direção clara e aplicação prática.

    Jornadas guiadas do básico ao avançado com checkpoints práticos, desenhadas para quem busca profundidade e protagonismo técnico.

    Iniciante

    Comece do zero com uma trilha clara e progressiva.

    Fundamentos práticos para dar os primeiros passos com segurança e construir uma base sólida.

    Intermediário

    Continue sua evolução com cursos que conectam fundamentos, ferramentas e prática profissional. Ganhe autonomia, e avance para projetos mais completos.

    Avançado

    Aprofunde temas técnicos e estratégicos para enfrentar desafios mais complexos. Explore boas práticas, arquitetura, performance com visão profissional.

    Cursos

    Ver mais cursos de Back-end
    • Pensamento computacional: fundamentos da computação e lógica de programação
    • Lógica de programação: mergulhe em programação com JavaScript
    • DDD: fundamentos do design orientado a domínio
    • ASP.NET: autenticação e autorização em APIs e aplicações web
    • Microsserviços: migração de monólitos e modularização

    Cursos

    Ver mais cursos de Dados
    • Python para Dados: primeiros passos
    • Excel: domine o editor de planilhas
    • Engenharia de Dados: Orquestração de Pipelines com Apache Airflow
    • Power BI Desktop: construindo meu primeiro dashboard
    • Governança e Arquitetura de Dados

    Cursos

    Ver mais cursos de Inteligência Artificial
    • IA: Explorando o Potencial da Inteligência Artificial Generativa
    • Engenharia de Prompt: Criando Prompts Eficazes para IA Generativa
    • Claude para Análise de Dados: prompts, integrações e automações
    • Agno: criando agentes e sistemas multiagente
    • Engenharia de software na era da IA: segurança de aplicações com agentes, MCPs e código gerado por IA

    Cursos

    Ver mais cursos de Front-end
    • HTML e CSS: ambiente, estrutura e estilo
    • React: realizando testes avançados com Jest e Testing Library
    • React: integrando TypeScript em projetos
    • JavaScript: aprendendo a programar
    • React: aplicando arquiteturas de Micro frontends

    Cursos

    Ver mais cursos de DevOps
    • Sistema Operacional Linux: fundamentos e administração prática
    • Containers e Docker: empacotamento, isolamento e gestão
    • Redes: dos conceitos iniciais à criação de uma intranet
    • Linux: gerenciando diretórios, arquivos, permissões e processos
    • Cibersegurança: Fundamentos e práticas integradas

    Cursos

    Ver mais cursos de UX & Design
    • UX Research: mapeando a experiência da pessoa usuária
    • UX/UI Design: Entregando produtos digitais com IA
    • UI Design: Prototipação e animações interativas
    • Figma: Conhecendo o programa
    • Product Design: métricas e ciclo de vida do produto

    Cursos

    Ver mais cursos de Inovação e Gestão
    • Canva: Criação de landing pages e e-mail marketing
    • Agilidade: como ela pode ajudar a criar um time de alta performance
    • Google Analytics 4: Extrair insights e configurar eventos
    • Management 3.0: gerencie o ambiente, não as pessoas
    • Automação de processos com n8n: Inteligência de dados para Marketing

    Cursos

    Ver mais cursos de Mobile
    • React Native: Estilização e Layouts com Flexbox e StyleSheet
    • Flutter: Graphql e suporte offline
    • Android com Gemini: Trabalhando com textos e imagens na IA
    • Dart: trabalhando com orientação a objetos
    • React Native: Dominando Listas com FlatList e ScrollView

    Carreiras

    Ver mais carreiras
    • Especialista em IA
    • Engenharia de IA
    • Ai native software engineering
    • Arquitetura de Soluções com IA
    • AI Product Design
    • Engenharia de Machine Learning
    • Desenvolvimento Front-End React
    • Engenharia de Dados
    • Cloud Security
    • Social Media Marketing
    • Engenharia de Agentes de IA

    Cursos

    • Engenharia de Prompt: Prompts Eficazes para IA Generativa
    • Claude Code: Criando sua Primeira Aplicação
    • Python: Crie sua Primeira Aplicação
    • Git e GitHub: Compartilhando e Colaborando
    • N8N: Fluxos de Trabalho Avançados

    Cursos

    • Copilot Studio: Solução Multiagentes
    • Padrões de API HTTP e Modelagem de APIs
    • Python para Análise de Dados com SQL
    • Docker: Criando e Gerenciando Containers
    • Design com IA: Otimizando o Processo Criativo

    Cursos

    • Model Context Protocol (MCP)
    • Spec-Driven Development: Dev Assistido por Agentes
    • Arquitetura de Sistemas Distribuídos com Java
    • Governança de Modelos e Reprodutibilidade
    • Pentest: Vulnerabilidades em Aplicações Web

    Escolha seu Plano

    Skills & Go

    O Skills & Go é para Tech Leads, Product Managers, estrategistas e early adopters que transformam ideias em soluções de alto impacto. Em cursos ao vivo e 100% online, você domina a nova era da IA em tempo real.

    Aulas ao vivo

    Saiba mais
    • Agentic Engineering: orquestre múltiplos agentes com confiabilidade
    • Building AI Products: transforme ideias em produtos reais com IA
    • AI Data Strategy: transforme dados em decisões estratégicas com IA

    Escolha seu Plano

    Eventos Alura

    Nossos eventos são pensados para quem quer estar à frente das mudanças em tecnologia, IA e inovação. Em experiências presenciais, você acompanha tendências e se conecta com especialistas que estão moldando o futuro.

    Próximos eventos

    • IA Conference
    • Alura Signals
  • Talent Lab
  • IA

    Escolha seu Plano

    Conteúdos gratuitos

    Explore conteúdos gratuitos para aprender tecnologia no seu ritmo. Encontre artigos com conteúdos técnicos para aprender na prática, notícias para acompanhar as principais tendências do mercado e o Alura Labs, com análises e reflexões de especialistas sobre tecnologia, IA e carreira.

    Conteúdos gratuitos

    • Artigos
    • Notícias
    • Alura Labs
  • Para Empresas
Ver planos
Links principais
  • Planos e Promoções
  • Links complementares do menu mobile
  • Talent lab
  • Inteligência Artificial
  • Pós Graduações
  • Para Empresas
  • Sobre a Alura
  • Grupo Alun
  • Entrar
    • Home
    • Carreiras
    • Skills & Go
    • Talent Lab
    • Inteligência Artificial
    • Pós Graduações
    • Artigos
    • Sobre a Alura
    • Grupo Alun
    LoginContato
    • LinkedIn
    • Instagram
    • YouTube
    1. Página inicial
    2. Front-end
    3. Animação em CSS: como usar Transition, Animation e efeitos prontos

    Animação em CSS: como usar Transition, Animation e efeitos prontos

    8 min8 minutos de leitura

    8 min8 minutos de leitura

    Publicado: 05/11/2019

    Última atualização: 15 de Maio

    1. O que é Animate.css? Use animações CSS prontas em seus projetos
    2. Transition em CSS: como criar animações com transições
    3. Como usar transition animation CSS: exemplos práticos"
    4. Animation CSS: como criar animações automáticas e avançadas
    5. Como usar animações CSS prontas com Animate.css
    6. Exemplos de animações em CSS para usar em sites
    7. Como monitorar o fim de animações CSS e transitions usando JavaScript
    8. Dicas para otimizar a performance de animação em CSS
    9. Bibliotecas populares para animação em CSS e alternativas

    Hoje em dia, a animação em CSS tornou-se um recurso fundamental para criar sites modernos, dinâmicos e interativos. Animações em CSS vão muito além de simples detalhes visuais, sendo usadas inclusive como marca registrada por grandes empresas, como o próprio Google. 

    Neste artigo, você vai aprender o que é animação CSS, além de conhecer exemplos práticos de animações CSS prontas para usar e explorar as possibilidades do transform CSS animation. 

    O que é Animate.css? Use animações CSS prontas em seus projetos 

    Animate.css (às vezes chamado de animation css ou css animate) é uma biblioteca pré-desenvolvida que facilita a adição de efeitos de animação em elementos HTML nas páginas web. 

    A biblioteca dispõe de várias classes de animação, cada uma correspondendo a um efeito visual específico. Ao incluir essas classes aos elementos HTML, é possível criar transições suaves e atraentes sem a necessidade de escrever código JavaScript personalizado. 

    Banner da Alura para o Prêmio Reclame AQUI 2026, convidando o público a votar na escola na categoria Cursos Profissionalizantes. A mensagem destaca a participação da Alura na premiação e traz o botão “Vote agora” para registrar o voto.

    Transition em CSS: como criar animações com transições 

    Se você busca entender como as animações CSS funcionam com a propriedade transition, saiba que transições são ótimas para criar efeitos visuais suaves e dinâmicos em interações comuns de sites. 

    Praticamente qualquer elemento na web pode ser animado, desde formulários durante transições de etapas, produtos sendo adicionados ao carrinho até o aparecimento de partes da página conforme o usuário rola a tela. 

    Na prática, boa parte dessas animações acontece após o usuário ou usuária executar uma ação. 

    Com isso em mente, vamos explorar a propriedade `transition` que se utilizada junto com os pseudo seletores `:hover` e `:focus` do CSS, é possível obter o seguinte resultado: 

        See the Pen     Transition: Exemplo 1 by Mario Souto (@omariosouto)    on CodePen. 

     

    Na prática, o transition pode ser aplicado para todos os valores que mudam entre os estilos padrões de um elemento e alguma variação aplicada, seja via uma ação de pseudo seletor (:hover e :focus) ou algum atributo, ou classe adicionada em uma tag na qual exista um seletor CSS aplicando alguma variação de estilo. 

    Somente valores quantificáveis podem ser animados com CSS, como opacity, transform, width ou height. Por exemplo, não é possível animar display de none para block, ou transformar a posição e escala de elementos com transform CSS animation. 

    Animações são, essencialmente, transições visíveis entre dois estados de um elemento. Alterar o background é apenas uma das opções disponíveis. 

    Também é possível animar propriedades como largura, altura, posição na página, e especialmente a propriedade `transform`, que funciona muito bem em conjunto com `transition`. 

        See the Pen     Transition: Exemplo 2 by Mario Souto (@omariosouto)    on CodePen. 

     

    Com `transform`, é possível aplicar diversos efeitos ao elemento, como alterar sua escala, posição ou distorcer com `skew()`, ampliando bastante as possibilidades de animação. 

    Como usar transition animation CSS: exemplos práticos" 

    `transition: 1s;`

    Aplica uma animação de 1 segundo para TODAS as propriedades de um seletor; é importante especificar quais propriedades vão ser animadas para evitar alguns gargalos de performance ou propriedades desnecessárias consumindo recursos em animações (que normalmente podem exigir bastante de computadores de usuários ou usuárias com hardwares menos potentes). 

    `transition: transform 1s, opacity 0.3s;`

    Aplica uma animação de 1 segundo para a propriedade transform, e uma de 0.3 segundos para o opacity. Todas as outras propriedades não são afetadas. 

    `transition-delay`

    Também é possível especificar um delay para o transition com `transition-delay`, tal como específicar a duração e as características via propriedades separadas; no dia a dia acabamos utilizando a forma dos exemplos anteriores, mas deixo a dica para você olhar na MDN como trabalhar com essas variações. 

    Animation CSS: como criar animações automáticas e avançadas 

    Como vimos anteriormente, para animarmos algo com transition, dependemos de alguma ação do usuário ou usuária.  

    Observação importante: desde 2024-2026, browsers modernos passaram a suportar transições de propriedades display e content-visibility, permitindo animações de entrada/saída mesmo com display: none, o que antes não era possível. 

        See the Pen     Animation: Exemplo 1 by Mario Souto (@omariosouto)    on CodePen. 

     

    Repare que a animação está acontecendo sozinha de forma contínua, bem semelhante a alguns itens que existem para chamar a atenção, como setas indicando que algum ponto é clicável em alguns sites.Para isso ser possível estamos utilizando a propriedade `animation`. 

    Para criar animações automáticas, utilizamos a propriedade `animation` junto com `@keyframes`. Os keyframes permitem definir diferentes estados para as propriedades CSS do elemento ao longo do tempo. 

    Basicamente, iremos definir que dado um espaço de tempo entre o começo e o fim do mesmo, determinadas propriedades CSS serão aplicadas. 

    @keyframes go-back { 
    0% { 
    transform: translateX(100px); 
    } 
    100% { 
    transform: translateX(0); 
    } 
    }

    Para associar esses keyframes a um elemento HTML, utilizamos a propriedade `animation` indicando o nome da animação definida: 

    .quadrado { 
    animation: go-back 1s; 
    }

        See the Pen     Animation: Exemplo 2 by Mario Souto (@omariosouto)    on CodePen. 

     

    Porém, dessa forma a animação só acontece uma vez; caso tenhamos interesse em fazê-la acontecer de forma infinita, podemos adicionar a propriedade `animation-iteration-count: infinite;`. 

    Também é possível definir quantas vezes a animação será repetida, substituindo 'infinite' por um número. Para a animação ir e voltar entre o início e o fim, utilize a propriedade `animation-direction: alternate;`. 

    Como usar animações CSS prontas com Animate.css 

    Como vimos, animate css é uma biblioteca de animações CSS pré-definidas que você pode usar facilmente em seus projetos web. 

    Confira abaixo, alguns passos básicos para começar a usar o animate.css em seu site: 

    1. Baixe o animate.css: 

    • Você pode baixar o arquivo CSS diretamente do site oficial do Animate.css. 
    • Também pode incluir diretamente de um CDN no seu HTML. 

    1. Adicione classes de animação: 

    • O Animate.css oferece diversas classes de animação que você pode adicionar aos seus elementos HTML para aplicar efeitos específicos. 
    • Para usar o Animate.css, você precisa adicionar a classe base `animate__animated ` junto com a classe de efeito desejada, por exemplo: ` animate__animated animate__bounce ` para aplicar uma animação de salto a um elemento. 

    Exemplos de animações em CSS para usar em sites 

    Aqui estão algumas dicas de animações comuns em sites: 

    Bounce 

    .ball { 
      margin-top: 50px; 
      border-radius: 50%; 
      width: 50px; 
      height: 50px; 
      background-color: cornflowerblue; 
      border: 2px solid #999; 
      animation: bounce 1s infinite alternate; 
      -webkit-animation: bounce 1s infinite alternate; 
    } 
    @keyframes bounce { 
      from { 
    transform: translateY(0px); 
      } 
      to { 
    transform: translateY(-15px); 
      } 
    } 
    @-webkit-keyframes bounce { 
      from { 
    transform: translateY(0px); 
      } 
      to { 
    transform: translateY(-15px); 
      } 
    }

    FadeIn 

    .ball { 
      margin-top: 50px; 
      border-radius: 50%; 
      width: 50px; 
      height: 50px; 
    } 
    @keyframes fadein { 
    from { opacity: 0; } 
    to   { opacity: 1; } 
    }

    Como monitorar o fim de animações CSS e transitions usando JavaScript 

    Como vimos anteriormente, é possível ter vários níveis de controle nas animações com CSS, porém caso você queria ter um controle mais fino via JavaScript via um `elemento.addEventListener` é possível monitorar quanto uma transition ou um animation termina: 

    • https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/animationend_event 
    • https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/transitionend_event 

    Dicas para otimizar a performance de animação em CSS 

    Esse post é mais introdutório, mas ainda assim, acho válido citar que trabalhar com performance em animações pode exigir um pouco de conhecimento de como o browser funciona, e um pouco de como o CSS funciona nos navegadores. 

    Existe uma propriedade que pode fazer milagres em alguns casos para melhorar performance de animações, mas que deve ser usado somente em último caso: 

    • will-change 

    E se você quiser ter uma introdução mais profunda do tema de performance em animações, confira essa talk do Sérgio Lopes: Otimizando renderização e animações na Web. 

    Caso você encontre alguma animação que realmente esteja prejudicando a experiência de usuários em devices menos potentes, você pode desabilitá-la utilizando o @media (prefers-reduced-motion: reduce). Importante: desde a versão 3.7.0, o Animate.css já suporta automaticamente prefers-reduced-motion, desabilitando animações para usuários com essa preferência ativa no sistema operacional. 

    Essas recomendações são fundamentais principalmente em animações CSS complexas, onde desempenho e acessibilidade devem ser considerados para não prejudicar a experiência do usuário.

    Para aprender ainda mais, confira nossa Carreira Desenvolvimento Front-end React! 

    Bibliotecas populares para animação em CSS e alternativas 

    Animate.css:

    Essa provavelmente foi a lib que mais me ajudou na época de agência. Além disso, existem versões da biblioteca Animate.css adaptadas para frameworks modernos, permitindo integrar animações de forma rápida ou estudar seu código-fonte para aprender como determinados efeitos são implementados, como o bounceIn. 

    Tweenmax - Greensock:

    Caso você queira fazer algo que possua um controle mais fino de o que é animado em cada tempo ou de acordo com X alteração do usuário, ou usuária, a melhor alternativa é correr para uma lib que te ajude a preparar essas “cenas”. O Tweenmax é uma ótima pedida, só deixo um ponto de observação, pois ela possui algumas restrições de uso gratuito. 

    Lottie do Airbnb:

    Essa é a lib do momento, aquela mesma animação do logo do Google, que citei no começo do vídeo. Você pode aprender a fazer nesse alura mais, utilizar o plugin para After Effects e exportar para utilizar na web, mas isso podemos abordar em outro artigo. 

    Por hoje é isso. Em breve, traremos mais dicas sobre CSS e animações. 

    Acompanhe também outros artigos sobre desenvolvimento web em https://mariosouto.com! 

    Para se aprofundar em animação em CSS, transition animation CSS e animation CSS, veja nossos cursos e formações completas de Front-End, HTML e CSS na Alura. Você vai encontrar aulas práticas, projetos reais e dezenas de exemplos de animações CSS prontas para usar em seus projetos 

    Também preparamos uma jornada completa, estruturada com desafios reais, conteúdos práticos e tudo que o mercado espera de uma pessoa desenvolvedora Front-end, na nossa Carreira Desenvolvimento Front-end React! 

    Banner da Alura para o Prêmio Reclame AQUI 2026, convidando o público a votar na escola na categoria Cursos Profissionalizantes. A mensagem destaca a participação da Alura na premiação e traz o botão “Vote agora” para registrar o voto.

    Avalie este artigo

    • Foto de Mario Souto

      Autor(a)

      Mario Souto

      Vivo no 220v, sempre atrás de um filme/rolê novo e codando desafios aleatórios em JavaScript. Adoro fazer sites e falar/dar aulas sobre isso no @nubank, meu canal no YouTube DevSoutinho e na @alura

    Explore por tópico

    • Back-end
    • Dados
    • DevOps
    • Front-end
    • Gestão & Negócios
    • Institucionais
    • Inteligência Artificial
    • Mobile
    • UX & Design

    Leia também

    • Alura
      15/04/2019

      Criando um autocomplete com JavaScript

      Ler mais
    • 09/01/2019

      Guia de Unidades no CSS: medidas absolutas e relativas

      Ler mais
    • 07/04/2024

      Como proteger suas aplicações Next.js: práticas essenciais de segurança

      Ler mais
    Ver mais conteúdos

    Inscreva-se em nossa Newsletter

    Fique por dentro de conteúdos, insights e oportunidades do universo tech. Receba novidades e lançamentos direto no seu e-mail.

    Institucional

    • Sobre nós
    • Trabalhe Conosco
    • Para Empresas
    • Para Escolas
    • Política de Privacidade
    • Compromisso de Integridade
    • Termos de Uso
    • Canal de Ética
    • Código de Ética
    • Fale Conosco
    • Documentos Institucionais
    • Status
    Institucional
    • Sobre nós
    • Trabalhe Conosco
    • Para Empresas
    • Para Escolas
    • Política de Privacidade
    • Compromisso de Integridade
    • Termos de Uso
    • Canal de Ética
    • Código de Ética
    • Fale Conosco
    • Documentos Institucionais
    • Status

    A Alura

    • Como Funciona
    • Inteligência Artificial
    • Plataforma
    • Depoimentos
    • Instrutores(as)
    • Dev em <T>
    • Luri, a Inteligência Artificial da Alura
    • IA Conference
    • Cursos Imersivos
    • Perguntas Frequentes
    A Alura
    • Como Funciona
    • Inteligência Artificial
    • Plataforma
    • Depoimentos
    • Instrutores(as)
    • Dev em <T>
    • Luri, a Inteligência Artificial da Alura
    • IA Conference
    • Cursos Imersivos
    • Perguntas Frequentes

    Conteúdos

    • Alura Cases
    • Imersões
    • Artigos
    • Podcasts
    • Artigos de educação corporativa
    Conteúdos
    • Alura Cases
    • Imersões
    • Artigos
    • Podcasts
    • Artigos de educação corporativa
    Uma Empresa do GrupoLogo Grupo Alun

    Outras empresas do Grupo Alun

    • FIAP
    • STARTSE
    • PM3
    • LUMINA

    Ao submeter seu e-mail, você concorda com a política de privacidade da Alura.

    Redes Sociais & Apps

    instagram
    youtube
    tiktok
    x
    appStore
    googlePlay
    Uma Empresa do GrupoLogo Grupo Alun

    Outras empresas do Grupo Alun

    • FIAP
    • STARTSE
    • PM3
    • LUMINA

    Ao submeter seu e-mail, você concorda com a política de privacidade da Alura.

    Redes Sociais & Apps

    instagram
    youtube
    tiktok
    x
    appStore
    googlePlay
    Alura