Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Renderizando uma página web

Renderizando uma página web

Aborda assuntos como:

* HTML
* CSS
* DOM
* CSSOM
* REPAINT
* REFLOW

Tudo isso de uma forma que conseguimos entender todo o trabalho que o navegador tem para renderizar uma página web.

Robson Júnior

May 09, 2015
Tweet

More Decks by Robson Júnior

Other Decks in Technology

Transcript

  1. DOM

  2. • Documento de especificação binária • Setar tipo dos dados

    • Definir relevância e como conteúdo será estruturado
  3. • Bytes → caracteres → tokens → nós → modelo

    de objeto • Marcação HTML é transformada em DOM
  4. • Bytes → caracteres → tokens → nós → modelo

    de objeto • Marcação HTML é transformada em DOM • Marcação CSS é transformada em CSSOM
  5. • Bytes → caracteres → tokens → nós → modelo

    de objeto • Marcação HTML é transformada em DOM • Marcação CSS é transformada em CSSOM • DOM e CSSOM são estruturas de dados independentes
  6. • Analisa todos nodes • Encontra no CSSOM a regra

    de cada node • Devolve os nodes com seus estilos computados
  7. • DOM + CSSOM === render tree • Render Tree

    === nodes para renderização
  8. • DOM + CSSOM === render tree • Render Tree

    === nodes para renderização • LAYOUT === posição + tamanho exato
  9. • DOM + CSSOM === render tree • Render Tree

    === nodes para renderização • LAYOUT === posição + tamanho exato • PAINT === render tree renderizado
  10. DOM

  11. Referências • w3.org/TR/DOM-Level-2-Core/introduction.html • developer.mozilla.org/pt-BR/docs/Tools/Paint_Flashing_Tool • developers.google.com/web/fundamentals/performance/critical-rendering-path/render-tree-construction • developers.google.com/web/fundamentals/performance/critical-rendering-path/constructing-the-object-model?hl=en •

    developers.google.com/web/fundamentals/performance/critical-rendering-path/measure-crp?hl=en • developers.google.com/web/fundamentals/performance/critical-rendering-path/analyzing-crp?hl=en • developers.google.com/web/fundamentals/performance/critical-rendering-path/optimizing-critical-rendering-path?hl=en • developers.google.com/web/fundamentals/performance/critical-rendering-path/constructing-the-object-model?hl=pt- br#css-object-model-cssom • browserdiet.com/pt/ • youtube.com/watch?v=jw4tVn7CRcI • youtube.com/watch?v=a2_6bGNZ7bA • youtube.com/watch?v=aH9eVa2cTcM • youtube.com/watch?v=gZH1d2Co1X0 • dev.w3.org/csswg/cssom/ • phpied.com/rendering-repaint-reflowrelayout-restyle/