Desempenho: Propriedades Transformáveis vs. com Repintura
Aprenda quais propriedades são aceleradas pela GPU e quais acionam repinturas de layout dispendiosas.
Desempenho: Propriedades Transformáveis vs. com Repintura é uma aula grátis de CSS Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de CSS Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de CSS Academy inclui 4 aulas no total.
O processo de renderização
Os navegadores renderizam em três etapas: Disposição (tamanho + posição) → Pintura (píxeis) → Composição (mesclagem de camadas da GPU). Animar propriedades que acionam etapas anteriores é dispendioso.
Propriedades que acionam a disposição
Alterar estas propriedades força o navegador a recalcular a disposição de potencialmente toda a página. Evite animá-las:
width,heightmargin,paddingtop,leftfont-sizedisplay
Propriedades que acionam a pintura
Estas propriedades ignoram a disposição, mas repintam os píxeis. O custo é moderado:
background-colorcolorbox-shadowborder
Propriedades exclusivas de composição
Estas propriedades ignoram tanto a disposição quanto a pintura — o navegador só precisa compor camadas rasterizadas previamente. O custo é muito baixo e há aceleração pela GPU:
transformopacity
Regra de ouro das animações CSS
Para obter animações suaves a 60 quadros por segundo, anime apenas transform e opacity. Use transform: translate() em vez de top/left e opacity em vez de transições graduais com display.
<div class="box demo-active">Box</div>Propriedade de alteração futura
will-change informa ao navegador que deve promover um elemento para sua própria camada da GPU antes do início da animação, evitando um "clarão de promoção" durante a animação.
<div class="animated">Animated</div>alteração futura: automática
Defina will-change: auto ou remova completamente a propriedade quando as animações terminarem. Manter elementos demais promovidos desperdiça memória da GPU.
Medição com DevTools
Use a guia Desempenho do Chrome DevTools para registrar e analisar a temporização dos quadros. A guia Renderização pode exibir a intermitência de pintura (sobreposição verde), mostrando quais elementos são repintados em cada quadro.
Transformação em vez de superior/esquerda
A otimização mais impactante é substituir animações posicionais por transformações:
<div class="fly demo-active">Fly</div>Custo da transição de cor
As transições de cor de fundo acionam a repintura, mas não a disposição. Elas são aceitáveis para elementos pequenos. Para fundos grandes, considere usar um pseudoelemento com uma transição de opacidade:
<button class="btn demo-active">Hover me</button>Propriedade de contenção
A propriedade contain informa ao navegador que um elemento e sua subárvore são independentes. Isso limita o escopo da invalidação da disposição, melhorando o desempenho da repintura.
<div class="widget">Widget</div>Verificação rápida
Quais duas propriedades CSS podem ser animadas na etapa de composição sem acionar a disposição ou a pintura?
Resumo
Animar propriedades de disposição (largura, superior, margem) aciona recálculos dispendiosos. Propriedades de pintura (cor, fundo) são mais baratas. Apenas transform e opacity são animadas na etapa de composição da GPU sem acionar a disposição ou a pintura. Dê sempre preferência a elas para obter animações suaves e eficientes.
Perguntas Frequentes
A aula “Desempenho: Propriedades Transformáveis vs. com Repintura” é grátis?
Sim — o texto completo de “Desempenho: Propriedades Transformáveis vs. com Repintura” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de CSS Academy, atualize para CoddyKit PRO. O curso de CSS Academy inclui 4 aulas no total.
O que vou aprender em “Desempenho: Propriedades Transformáveis vs. com Repintura”?
Aprenda quais propriedades são aceleradas pela GPU e quais acionam repinturas de layout dispendiosas. Você pratica CSS Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar CSS Academy?
Nenhuma experiência prévia é necessária. CSS Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Desempenho: Propriedades Transformáveis vs. com Repintura”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de CSS Academy?
Sim. Cada aula de CSS Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Duração e Temporização da Propriedade de Transição
- Funções de Aceleração: ease linear cubic-bezier
- Transicionando Várias Propriedades
- Desempenho: Propriedades Transformáveis vs. com Repintura