Aprenda Animações CSS: Domine @keyframes e Transições
Domine Transições em CSS: Guia das Propriedades e Dicas
As transições em CSS permitem que mudanças em propriedadesClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. sejam exibidas de forma gradual, conferindo fluidez e elegância à experiência do usuário. Em vez de alterações bruscas de cor, tamanho ou posição, podemos criar efeitos suaves que valorizam a interação com elementos na interface.
Nesta lição, vamos explorar os principais aspectos para entender e aplicar transições com sucesso:
1. transition-property
2. transition-duration
3. transition-timing-function
Conceito de Transição🔗
Imagine um botão que muda de corSeletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos. ao passar o mouse por cima. Sem transições, a mudança acontece instantaneamente, quase imperceptível. Com transições, conseguimos especificar quanto tempo essa mudança levará para acontecer e como ela será animada, gerando um efeito mais agradável e moderno.
Exemplo de Uso Básico
.botao {
background-color: #3498db;
color: #fff;
padding: 10px 20px;
transition-property: background-color; /* Propriedade que vai sofrer transição */
transition-duration: 0.3s; /* Duração da transição em segundos */
transition-timing-function: ease; /* Função de aceleração */
}
.botao:hover {
background-color: #1abc9c; /* Nova cor ao hover */
}
Quando o cursor do mouse paira sobre o .botao
, a cor de fundoSeletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos. vai se transformar de #3498db para #1abc9c gradualmente em 0.3 segundos, utilizando a função
Funções e Escopo no JavaScriptAprenda a utilizar funções e escopos em JavaScript com nosso guia prático. Melhore sua organização de código e evolua seus projetos com boas práticas. de aceleração ease.
transition-property🔗
A propriedadeClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. transition-property define qual(is) propriedade(s) do elemento vão sofrer a transição. Você pode direcionar a transição apenas para a mudança de cor, de tamanho, de margem ou até várias propriedades
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. ao mesmo tempo.
- Exemplos de Valores:
background-color
Seletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos.
width
all
(para aplicar a transição em todas as propriedadesClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. elegíveis)
- É importante
!important e Boas PráticasDescubra como o !important afeta a cascata do CSS e aprenda boas práticas para evitar conflitos, facilitando a manutenção e depuração do código. lembrar: nem todas as propriedades de CSS suportam transições. Geralmente, funcionam bem em propriedades
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. que possam ser alteradas de forma contínua, como cores, tamanhos, posições e opacidade.
transition-duration🔗
A propriedadeClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. transition-duration determina quanto tempo (em segundos ou milissegundos) a transição vai levar para completar. Mesmo uma troca simples de cor
Seletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos. pode ficar mais agradável quando realizada em 0.2s ou 0.3s.
- Exemplos de Valores:
1s
(um segundo)500ms
(meio segundo)
Dica: Evite exagerar no tempo de transição, pois animaçõesAnimações e Efeitos com JavaScript PuroAprenda a criar animações e efeitos visuais usando JavaScript puro. Descubra técnicas que combinam performance e criatividade para interações web surpreendentes muito longas podem prejudicar a usabilidade.
transition-timing-function🔗
A propriedadeClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters. transition-timing-function define como a velocidade da transição vai progredir ao longo do tempo, também conhecida como função
Funções e Escopo no JavaScriptAprenda a utilizar funções e escopos em JavaScript com nosso guia prático. Melhore sua organização de código e evolua seus projetos com boas práticas. de aceleração. Ela controla a sensação de fluidez e pode ser utilizada para criar efeitos sutis e naturais.
Principais Valores:
Valor | Descrição |
---|---|
linear | A velocidade da animação é constante, do início ao fim. |
ease | É a função de aceleração padrão, inicia e termina mais devagar e acelera no meio. |
ease-in | Inicia devagar e acelera depois. |
ease-out | Inicia rápido e desacelera antes do fim. |
ease-in-out | Combinação de ease-in e ease-out, começa e termina devagar, com aceleração no meio. |
cubic-bezier(x1,y1,x2,y2) | Permite criar curvas personalizadas, oferecendo controle total sobre a aceleração. |
Para experimentar efeitos diferentes, vale a pena testar cada funçãoFunções e Escopo no JavaScriptAprenda a utilizar funções e escopos em JavaScript com nosso guia prático. Melhore sua organização de código e evolua seus projetos com boas práticas. e descobrir qual se adapta melhor ao objetivo visual.
Exemplo Completo🔗
Abaixo, temos um elementoTags e Elementos: Sintaxe e HierarquiaDescubra os fundamentos do HTML: aprenda sobre tags, elementos, hierarquia e boas práticas para criar páginas bem estruturadas e acessíveis. com várias transições aplicadas:
.card {
width: 200px;
height: 200px;
background-color: lightblue;
border-radius: 8px;
margin: 20px;
/* Vamos aplicar transição em várias propriedades ao mesmo tempo */
transition-property: background-color, transform, border-radius;
transition-duration: 0.4s;
transition-timing-function: ease-in-out;
}
.card:hover {
background-color: lightcoral;
transform: scale(1.1);
border-radius: 50%;
}
1. transition-property: background-colorSeletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos., transform, border-radius
Indica que a cor de fundo, a transformaçãoTransformações: translate(), rotate(), scale(), skew()Aprenda a aplicar transformações em CSS como translate, rotate, scale e skew para criar layouts dinâmicos e visuais impactantes sem alterar o fluxo da página. de escala e o arredondamento do canto irão sofrer transição.
2. transition-duration: 0.4s
Define que cada alteração levará 0.4 segundos para se completar.
3. transition-timing-function: ease-in-out
Faz com que a animaçãoAnimações e Efeitos com JavaScript PuroAprenda a criar animações e efeitos visuais usando JavaScript puro. Descubra técnicas que combinam performance e criatividade para interações web surpreendentes comece e termine mais suavemente, com aceleração no meio.
Ao passar o mouse no .card
, haverá uma transição suave que muda a corSeletores e Propriedades CSS EssenciaisAprenda a dominar o CSS com nosso tutorial completo: entenda seletores, propriedades essenciais e técnicas para criar layouts modernos e atrativos. do fundo de lightblue para lightcoral, altera o tamanho do card para 110% do original e arredonda seus cantos até formar um círculo, tudo no decorrer de 0.4 segundos.
Resumo🔗
- transitions tornam as mudanças mais dinâmicas e agradáveis.
- transition-property especifica a(s) propriedade
Classes e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters.(s) afetada(s) pela animação.
- transition-duration define a duração da transição.
- transition-timing-function controla o ritmo (aceleração) da mudança visual.
Transições são uma forma simples de adicionar interatividade e elegância à experiência do usuário. Explorar combinações diferentes de propriedadesClasses e Herança em ES6+Aprenda a dominar classes e herança em ES6+: escreva códigos JavaScript claros e eficientes com métodos, getters e setters., durações e timing functions pode resultar em interfaces criativas e envolventes, sem sacrificar a acessibilidade
Inserindo Imagens: `<img>`, Formatos, `alt` e `title`Aprenda a inserir imagens em HTML utilizando a tag <img> com foco em acessibilidade e performance, explorando atributos, formatos e melhores práticas. ou a performance do seu projeto.
Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.
Referências🔗
- DevDocs: devdocs.io/css/
- FreeCodeCamp: www.freecodecamp.org/learn/responsive-web-design/#basic-css
- MDN Web Docs: developer.mozilla.org/pt-BR/docs/Web/CSS
- W3Schools: www.w3schools.com/css/