개발 공부 일지/CSS

Position 속성의 퍼포먼스 이슈

dev-hpk 2024. 9. 9. 11:29

1. Repaint와 Reflow

position: absoluteposition: fixed와 같은 속성을 사용하면 요소가 문서 흐름에서 제거되기 때문에, 브라우저는 해당 요소의 위치를 계산하고 레이아웃을 조정해야 합니다. 이는 reflow를 유발할 수 있으며, 많은 요소를 동시에 다루거나 복잡한 레이아웃이 있을 경우 성능에 부정적인 영향을 미칠 수 있습니다.

2. 복잡한 레이아웃 및 배치

position: absoluteposition: fixed를 사용하면 요소는 부모 요소의 위치를 기준으로 배치되며, 이로 인해 복잡한 레이아웃이 발생할 수 있습니다. 브라우저는 이러한 레이아웃을 계산하고 렌더링하는 데 추가적인 연산을 수행해야 합니다.

3. 스크롤 및 리플로우 문제

position: fixed는 뷰포트에 고정되며, 스크롤이 발생하더라도 요소의 위치가 변하지 않습니다. 그러나 페이지의 다른 부분이 스크롤할 때, 고정된 요소의 렌더링 성능에 영향을 줄 수 있습니다. 특히 많은 요소가 고정되어 있거나 복잡한 스크롤 상호작용이 있을 경우 성능이 저하될 수 있습니다.

4. 애니메이션 및 트랜지션

position: absoluteposition: fixed가 적용된 요소를 애니메이션 할 때, 브라우저는 요소의 위치를 실시간으로 계산해야 하며, 이로 인해 렌더링 성능이 저하될 수 있습니다. 특히 많은 요소가 동시에 애니메이션 되거나 복잡한 트랜지션 효과가 적용되면 성능이 크게 저하될 수 있습니다.

'개발 공부 일지 > CSS' 카테고리의 다른 글

[CSS] CSS-in-CSS vs CSS-in-JS  (5) 2024.11.28
반응형 웹  (0) 2024.09.09
CSS 적용 방법 및 Cascading의 원리  (0) 2024.09.09
Cascading  (0) 2024.09.09