0Pricing
CSS Academy · Aula

Layout, pintura e composição: o pipeline de renderização

Entenda o pipeline de layout, pintura e composição do navegador para prever os custos de alterações de estilo.

Layout, pintura e composição: o pipeline de renderização é uma aula grátis de CSS Academy no CoddyKit. Esta é a aula 2 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.

As três etapas da renderização

Depois que a árvore de renderização é criada, o navegador executa três etapas: disposição (calculando os tamanhos e as posições dos elementos), pintura (preenchendo pixels com cores, textos e imagens) e composição (combinando as camadas pintadas e exibindo-as na tela).

Disposição (refluxo)

A disposição calcula a geometria — largura, altura e posição x/y — de cada elemento. Alterar propriedades que afetam a geometria (width, margin, padding, font-size, position) dispara a disposição do elemento e potencialmente de toda a sua subárvore — é a etapa mais dispendiosa.

Pintura

A pintura preenche os pixels de cada camada: fundos, bordas, textos e sombras. Alterar color, background-color, visibility ou border-radius dispara uma repintura sem refazer a disposição — é mais barato que a disposição, mas ainda pode ser dispendioso se uma área grande for repintada.

Composição

O compositor combina as camadas usando a GPU. As propriedades CSS que afetam apenas a composição — transform e opacity — podem ser animadas sem disparar a disposição ou a pintura. A GPU as processa a 60 fps com envolvimento mínimo da CPU.

Referência dos gatilhos do CSS

csstriggers.com (atualmente documentação no navegador) documenta quais propriedades CSS disparam a disposição, a pintura e/ou a composição em cada mecanismo de navegador. Use-o para auditar propriedades de animação. Prefira transform/opacity para propriedades animadas.

Sobrecarga da disposição

A sobrecarga da disposição ocorre quando o JavaScript alterna entre ler propriedades de disposição (offsetWidth) e escrever propriedades de estilo em um ciclo. Cada escrita invalida a disposição; cada leitura força um refluxo síncrono. Agrupe todas as leituras antes de todas as escritas para evitar essa sobrecarga.

  <pre class="snippet">// BAD: read-write-read-write loop
elements.forEach(el => { const w = el.offsetWidth; el.style.width = w + 10 + "px"; });
// GOOD: batch reads then writes</pre>

Propriedades exclusivas do compositor

Apenas transform e opacity são processadas inteiramente pelo compositor quando o elemento está em sua própria camada. Animar qualquer outra propriedade — até mesmo left/top — dispara a disposição ou a pintura na linha de execução principal e pode causar travamentos.

Criação de camadas da GPU

Os navegadores promovem elementos para sua própria camada da GPU quando eles têm will-change: transform, uma animação CSS em transform/opacity, uma posição fixa com elementos vizinhos em composição ou uma transformação 3D. Cada camada usa memória da GPU — camadas demais causam pressão de memória.

Evitando tempestades de pintura

Uma tempestade de pintura ocorre quando uma grande parte da página é repintada a cada quadro. Crie um perfil no Chrome DevTools → Renderização → Piscar de pintura para identificar as áreas repintadas. Isole os elementos frequentemente animados em suas próprias camadas para limitar a área de repintura.

Painel de desempenho do DevTools

Grave um perfil de desempenho no Chrome DevTools. O gráfico de chamas mostra eventos de layout, atualização da árvore de camadas, pintura e composição. Barras longas de layout ou pintura indicam gargalos. Procure manter os tempos de quadro abaixo de 16 ms para manter 60 quadros por segundo.

Diretrizes práticas de animação

Anime com transform e opacity sempre que possível. Use clip-path em vez de width/height para animações de revelação — clip-path favorece o trabalho do compositor nos navegadores modernos. Evite animar box-shadow; use opacity com um pseudo-elemento que contenha uma sombra pré-renderizada.

Verificação de conhecimento

Quais duas propriedades CSS podem ser animadas sem acionar o layout ou a pintura?

Resumo

O pipeline de renderização — layout, pintura e composição — determina o desempenho das animações. O layout é o mais dispendioso, a pintura tem custo moderado e as propriedades exclusivas de composição (transform, opacity) são processadas pela GPU. Compreender esses acionadores permite criar animações suaves a 60 quadros por segundo, sem recalculos excessivos de layout ou tempestades de pintura.

Perguntas Frequentes

A aula “Layout, pintura e composição: o pipeline de renderização” é grátis?

Sim — o texto completo de “Layout, pintura e composição: o pipeline de renderização” é 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 “Layout, pintura e composição: o pipeline de renderização”?

Entenda o pipeline de layout, pintura e composição do navegador para prever os custos de alterações de estilo. 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 2 de 4.

Quanto tempo leva a aula “Layout, pintura e composição: o pipeline de renderização”?

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

  1. CSS crítico e bloqueio de renderização
  2. Layout, pintura e composição: o pipeline de renderização
  3. will-change e promoção de camadas
  4. Cobertura de CSS e estilos não utilizados
← Voltar para CSS Academy