브라우저는 무슨일을 하고 있을까?

MDN 공식문서 보기

참고로 위 링크의 한글 문서는 현재 초안 작성 중이다

DOM 트리 생성

CSSOM 트리 생성

image with caption

Render Tree 생성

The render tree only captures visible content. The head section (generally) doesn’t contain any visible information, and is therefore not included in the render tree. If there’s a display: none; set on an element, neither it, nor any of its descendants, are in the render tree.

레이아웃 단계

Once the render tree is built, layout becomes possible. Layout is dependent on the size of screen. The layout step determines where and how the elements are positioned on the page, determining the width and height of each element, and where they are in relation to each other.

Paint 단계

착안점

1) 위치가 변하는 경우

2) 색깔만 변하는 경우

2번의 경우와 비교했을 떄 Layout 단계를 1번 더 거쳐야 하기 때문에 브라우저 렌더링시 더 부하가 걸리게 됨을 알 수 있다.

추후 최적화를 고려한다면 이렇게 브라우저 렌더링도 고려하는 것도 좋을 것 같다.