--- category: Unified tags: [auto-consolidated, technical-documentation] title: [[Reflow and Repaint|Reflow and Repaint]] last_updated: 2026-05-02 --- # [[Reflow and Repaint|Reflow and Repaint]] ## ๐Ÿ“Œ Brief Summary Reflow(๋ฆฌํ”Œ๋กœ์šฐ)๋Š” ์š”์†Œ์˜ ๋„ˆ๋น„, ๋†’์ด ๋“ฑ ๋ ˆ์ด์•„์›ƒ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋ณ€๊ฒฝ์ด ๋ฐœ์ƒํ•  ๋•Œ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํŽ˜์ด์ง€์˜ ๊ตฌ์กฐ๋ฅผ ๋‹ค์‹œ ๊ณ„์‚ฐํ•˜๋Š” ๊ณผ์ •์ด๋ฉฐ, Repaint(๋ฆฌํŽ˜์ธํŠธ)๋Š” ๋ฐฐ๊ฒฝ์ƒ‰ ๋“ฑ ์‹œ๊ฐ์  ์š”์†Œ๋งŒ ๋ณ€๊ฒฝ๋  ๋•Œ ๋ ˆ์ด์•„์›ƒ ๊ณ„์‚ฐ ์—†์ด ํ™”๋ฉด์„ ๋‹ค์‹œ ๊ทธ๋ฆฌ๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค [1, 2]. ์ด ๋‘ ๊ณผ์ •์€ ๋น„์šฉ์ด ๋งŽ์ด ๋“œ๋Š” ์ž‘์—…์œผ๋กœ ๋ธŒ๋ผ์šฐ์ € ๋ Œ๋”๋ง ์„ฑ๋Šฅ์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฉฐ, ํŠนํžˆ ์• ๋‹ˆ๋ฉ”์ด์…˜์ด๋‚˜ ๋™์  UI๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์„ฑ๋Šฅ ์ €ํ•˜์™€ ๋ฒ„๋ฒ…๊ฑฐ๋ฆผ(Jank)์˜ ์ฃผ๋œ ์›์ธ์ด ๋ฉ๋‹ˆ๋‹ค [1, 3, 4]. ๋”ฐ๋ผ์„œ ์œ ์ง€๋ณด์ˆ˜ ๊ฐ€๋Šฅํ•˜๊ณ  ํ™•์žฅ์„ฑ ์žˆ๋Š” CSS๋ฅผ ์„ค๊ณ„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ฆฌํ”Œ๋กœ์šฐ์™€ ๋ฆฌํŽ˜์ธํŠธ๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๋ Œ๋”๋ง ์ตœ์ ํ™” ์ „๋žต์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค [5-7]. --- ๋ฆฌํ”Œ๋กœ์šฐ(Reflow)๋Š” ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ™”๋ฉด ๋‚ด ์š”์†Œ๋“ค์˜ ๊ธฐํ•˜ํ•™์  ์œ„์น˜์™€ ํฌ๊ธฐ๋ฅผ ์žฌ๊ณ„์‚ฐํ•˜๋Š” ๊ณผ์ •์„ ์˜๋ฏธํ•˜๋ฉฐ ์ปดํ“จํŒ… ์ž์›์„ ๋งŽ์ด ์†Œ๋ชจํ•ฉ๋‹ˆ๋‹ค [1-3]. ๋ฐ˜๋ฉด ๋ฆฌํŽ˜์ธํŠธ(Repaint)๋Š” ๋ ˆ์ด์•„์›ƒ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š” ์‹œ๊ฐ์  ์Šคํƒ€์ผ ๋ณ€ํ™”(์ƒ‰์ƒ, ๊ทธ๋ฆผ์ž ๋“ฑ)๋ฅผ ํ”ฝ์…€๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ํ™”๋ฉด์— ๊ทธ๋ฆฌ๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค [1, 4]. ๋‘ ๊ณผ์ • ๋ชจ๋‘ ์›น ํŽ˜์ด์ง€์˜ ํฌ๋ฆฌํ‹ฐ์ปฌ ๋ Œ๋”๋ง ํŒจ์Šค(CRP)์—์„œ ํ™”๋ฉด์„ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ด์ง€๋งŒ, ๊ณผ๋„ํ•˜๊ฒŒ ๋ฐœ์ƒํ•  ๊ฒฝ์šฐ ์›น ํŽ˜์ด์ง€์˜ ์„ฑ๋Šฅ์„ ํฌ๊ฒŒ ์ €ํ•˜์‹œํ‚ค๋ฏ€๋กœ ์ด๋ฅผ ์ตœ์†Œํ™”ํ•˜๋Š” ๊ฒƒ์ด ํ”„๋ก ํŠธ์—”๋“œ ์„ฑ๋Šฅ ์ตœ์ ํ™”์˜ ํ•ต์‹ฌ์ž…๋‹ˆ๋‹ค [5-7]. ## ๐Ÿ“– Core Content * **Reflow์™€ Repaint์˜ ๊ฐœ๋…** * **Repaint:** ์š”์†Œ์˜ ๊ฐ€์‹œ์„ฑ(visibility), ๋ฐฐ๊ฒฝ์ƒ‰(background color), ์œค๊ณฝ์„ (outline) ๋“ฑ ๋ ˆ์ด์•„์›ƒ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๋Š” ์‹œ๊ฐ์  ์Šคํ‚จ์˜ ๋ณ€ํ™”๊ฐ€ ์ƒ๊ธธ ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค [1, 2]. ๋ธŒ๋ผ์šฐ์ €๋Š” DOM ํŠธ๋ฆฌ์— ์žˆ๋Š” ๋‹ค๋ฅธ ๋…ธ๋“œ๋“ค์˜ ๊ฐ€์‹œ์„ฑ๊นŒ์ง€ ํ™•์ธํ•ด์•ผ ํ•˜๋ฏ€๋กœ ๋น„์šฉ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค [2]. * **Reflow:** ์š”์†Œ์˜ ํฌ๊ธฐ(width, height), ์—ฌ๋ฐฑ(margin, padding), ์œ„์น˜(left, top ๋“ฑ) ๋“ฑ ๋ ˆ์ด์•„์›ƒ ๊ธฐํ•˜ํ•™์ด ๋ณ€๊ฒฝ๋  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค [3, 8]. ํ•ด๋‹น ์š”์†Œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ž์‹ ์š”์†Œ, ์กฐ์ƒ ์š”์†Œ, ๊ทธ๋ฆฌ๊ณ  DOM ํŠธ๋ฆฌ์—์„œ ๊ทธ ๋’ค์— ์˜ค๋Š” ์š”์†Œ๋“ค๊นŒ์ง€ ์—ฐ์‡„์ ์œผ๋กœ ๋ฆฌํ”Œ๋กœ์šฐ๋ฅผ ์œ ๋ฐœํ•˜๋ฏ€๋กœ ์ „์ฒด ํŽ˜์ด์ง€๋ฅผ ๋‹ค์‹œ ๋ฐฐ์น˜ํ•˜๋Š” ๊ฒƒ๊ณผ ๋งž๋จน๋Š” ๋†’์€ ๋น„์šฉ์ด ๋“ญ๋‹ˆ๋‹ค [2, 4]. * **์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ์œ ๋ฐœํ•˜๋Š” ์ฃผ์š” ์›์ธ** * ์ฐฝ ํฌ๊ธฐ ์กฐ์ ˆ, ํฐํŠธ ๋ณ€๊ฒฝ, DOM ์Šคํฌ๋ฆฝํŠธ ์กฐ์ž‘, CSS ๊ฐ€์ƒ ํด๋ž˜์Šค(`:hover` ๋“ฑ) ํ™œ์„ฑํ™”, ํด๋ž˜์Šค ์†์„ฑ ๋ณ€๊ฒฝ, `offsetWidth` ๋ฐ `offsetHeight` ๊ณ„์‚ฐ ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์ด ๋ฆฌํ”Œ๋กœ์šฐ๋ฅผ ์œ ๋ฐœํ•ฉ๋‹ˆ๋‹ค [9, 10]. * DOM์„ ์ฝ๊ณ  ์“ฐ๋Š” ์ž‘์—…์„ ์งง์€ ๋ฃจํ”„ ์•ˆ์—์„œ ์—ฐ์†์ ์œผ๋กœ ์‹คํ–‰ํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๊ฐ•์ œ๋กœ ๋™๊ธฐ์  ๋ฆฌํ”Œ๋กœ์šฐ๋ฅผ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•˜๋Š” ๋ ˆ์ด์•„์›ƒ ์Šค๋ž˜์‹ฑ([[Layout Thrashing|Layout Thrashing]])์ด ๋ฐœ์ƒํ•˜์—ฌ ํ”„๋ ˆ์ž„ ์†๋„๊ฐ€ ํฌ๊ฒŒ ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค [11, 12]. * ํฌ๊ธฐ๋‚˜ ์—ฌ๋ฐฑ ๊ฐ™์€ ๋ ˆ์ด์•„์›ƒ ์†์„ฑ์„ ์• ๋‹ˆ๋ฉ”์ด์…˜์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ Œ๋”๋ง ์—”์ง„์„ ๋งค ํ”„๋ ˆ์ž„๋งˆ๋‹ค ํ˜ธ์ถœํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์„ฑ๋Šฅ์— ์น˜๋ช…์ ์ž…๋‹ˆ๋‹ค [1, 3]. * **Reflow ๋ฐ Repaint ์ตœ์ ํ™”(๊ฐ์†Œ) ๊ธฐ๋ฒ•** * **GPU ๊ฐ€์† ํ™œ์šฉ:** ๋ ˆ์ด์•„์›ƒ์„ ๋ณ€๊ฒฝํ•˜๋Š” ์†์„ฑ ๋Œ€์‹  `transform`๊ณผ `opacity`๋ฅผ ์• ๋‹ˆ๋ฉ”์ด์…˜์— ์‚ฌ์šฉํ•˜๋ฉด ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๊ฐ’๋น„์‹ผ Layout๊ณผ Paint ๋‹จ๊ณ„๋ฅผ ๊ฑด๋„ˆ๋›ฐ๊ณ  GPU์—์„œ ํ•ฉ์„ฑ(Compositing)๋งŒ ์ฒ˜๋ฆฌํ•˜๋ฏ€๋กœ ์„ฑ๋Šฅ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค [8, 13, 14]. * **DOM ๋ณ€๊ฒฝ ๋ฐ ์Šคํƒ€์ผ ์ ์šฉ ์ตœ์†Œํ™”:** ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์ธ๋ผ์ธ ์Šคํƒ€์ผ์„ ๊ฐ๊ฐ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์„ ํ”ผํ•˜๊ณ , ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ฌถ์–ด CSS ํด๋ž˜์Šค๋กœ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [15, 16]. ๋˜ํ•œ ๋ฆฌํ”Œ๋กœ์šฐ์˜ ํŒŒ๊ธ‰ ๋ฒ”์œ„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•ด DOM ํŠธ๋ฆฌ์˜ ๊ฐ€๋Šฅํ•œ ๊ฐ€์žฅ ๋‚ฎ์€ ํ•˜์œ„ ๋…ธ๋“œ์—์„œ ํด๋ž˜์Šค๋ฅผ ๋ณ€๊ฒฝํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [17]. * **๋ฌธ์„œ ํ๋ฆ„(Flow) ๋ถ„๋ฆฌ:** ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ์ ์šฉ๋˜๋Š” ์š”์†Œ์—๋Š” `position: fixed` ๋˜๋Š” `absolute`๋ฅผ ์ ์šฉํ•˜์—ฌ ์ฃผ๋ณ€ ์š”์†Œ์˜ ๋ ˆ์ด์•„์›ƒ์— ์˜ํ–ฅ์„ ์ฃผ์ง€ ์•Š๊ณ  ๋ฆฌํŽ˜์ธํŠธ๋งŒ ๋ฐœ์ƒํ•˜๋„๋ก ์œ ๋„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [15]. * **ํ…Œ์ด๋ธ” ๋ ˆ์ด์•„์›ƒ ์ง€์–‘:** ํ…Œ์ด๋ธ”์€ ์•„์ฃผ ์ž‘์€ ๋ณ€ํ™”์—๋„ ๋‚ด๋ถ€์˜ ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ ๋ฆฌํ”Œ๋กœ์šฐ๋ฅผ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ๊ณ , ์ „์ฒด ์ฝ˜ํ…์ธ ๋ฅผ ํŒŒ์•…ํ•˜๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๋ฒˆ์˜ ๋ Œ๋”๋ง ํŒจ์Šค๊ฐ€ ํ•„์š”ํ•˜๋ฏ€๋กœ ๋ ˆ์ด์•„์›ƒ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•ด์„œ๋Š” ์•ˆ ๋ฉ๋‹ˆ๋‹ค [18]. * **๋ Œ๋”๋ง ํžŒํŠธ ์ œ๊ณต:** ๋ณ€๊ฒฝ์ด ๋นˆ๋ฒˆํ•˜๊ฒŒ ์ผ์–ด๋‚  ์š”์†Œ์—๋Š” `will-change` ์†์„ฑ์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ฏธ๋ฆฌ ๋ Œ๋”๋ง ์ตœ์ ํ™”๋ฅผ ์ค€๋น„ํ•˜๋„๋ก ์ง€์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [12, 19]. * **์• ๋‹ˆ๋ฉ”์ด์…˜ ์ฃผ๊ธฐ์˜ ๋™๊ธฐํ™”:** `requestAnimationFrame`์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋ธŒ๋ผ์šฐ์ €์˜ ๊ธฐ๋ณธ ๋ฆฌํŽ˜์ธํŠธ ์ฃผ๊ธฐ์™€ ๋™๊ธฐํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [11, 12]. --- * **๋ฆฌํ”Œ๋กœ์šฐ(Reflow / Layout)์˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜๊ณผ ์˜ํ–ฅ:** * ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋ทฐํฌํŠธ ํฌ๊ธฐ์™€ ๋ฐ•์Šค ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ Œ๋” ํŠธ๋ฆฌ ๋‚ด ๋ชจ๋“  ๊ฐ€์‹œ์  ์š”์†Œ์˜ ์ •ํ™•ํ•œ ์œ„์น˜์™€ ํฌ๊ธฐ(x, y, ๋„ˆ๋น„, ๋†’์ด)๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค [3, 8, 9]. * ์ฃผ๋กœ ์ฐฝ ํฌ๊ธฐ ์กฐ์ ˆ(Resizing), DOM ์š”์†Œ์˜ ์ถ”๊ฐ€ ๋ฐ ์ œ๊ฑฐ, ๋งˆ์ง„์ด๋‚˜ ํŒจ๋”ฉ ๋“ฑ ๋ ˆ์ด์•„์›ƒ์— ์˜ํ–ฅ์„ ์ฃผ๋Š” ์†์„ฑ์ด ๋ณ€๊ฒฝ๋  ๋•Œ ํŠธ๋ฆฌ๊ฑฐ๋ฉ๋‹ˆ๋‹ค [1, 4, 10]. * ๋ฌธ์„œ ํ๋ฆ„(Document flow)์˜ ํŠน์„ฑ์ƒ ๋‹จ์ผ ์š”์†Œ์˜ ๊ธฐํ•˜ํ•™์  ๋ณ€ํ™”๊ฐ€ ๋ Œ๋” ํŠธ๋ฆฌ ์ „์ฒด์˜ ์—ฐ์‡„์ ์ธ ์žฌ๊ณ„์‚ฐ(Cascade of recalculations)์„ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ๋ฆฌํ”Œ๋กœ์šฐ๋Š” ์—ฐ์‚ฐ ๋น„์šฉ์ด ๋งค์šฐ ๋†’์€ ์ž‘์—…์— ์†ํ•ฉ๋‹ˆ๋‹ค [2, 7, 8]. * **๋ฆฌํŽ˜์ธํŠธ(Repaint / Paint)์˜ ๋ฉ”์ปค๋‹ˆ์ฆ˜๊ณผ ์˜ํ–ฅ:** * ๊ธฐํ•˜ํ•™์  ๊ตฌ์กฐ ๊ณ„์‚ฐ์ด ์™„๋ฃŒ๋œ ํ›„, ์Šคํƒ€์ผ ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋ Œ๋” ํŠธ๋ฆฌ์˜ ๊ฐ ๋…ธ๋“œ๋ฅผ ์‹ค์ œ ํ™”๋ฉด์˜ ํ”ฝ์…€๋กœ ๋ž˜์Šคํ„ฐํ™”(Rasterizing)ํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค [1, 11, 12]. * ๋ฐฐ๊ฒฝ์ƒ‰, ํ…์ŠคํŠธ ์ƒ‰์ƒ, ๊ทธ๋ฆผ์ž(box-shadow), ๊ฐ€์‹œ์„ฑ ๋“ฑ ๋ ˆ์ด์•„์›ƒ ์ˆ˜์น˜๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š” ์‹œ๊ฐ์  ์†์„ฑ ๋ณ€ํ™”๊ฐ€ ์žˆ์„ ๋•Œ๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค [1, 4, 10]. * ๋ฆฌํ”Œ๋กœ์šฐ๋ณด๋‹ค๋Š” ๊ณ„์‚ฐ ๋น„์šฉ์ด ์ƒ๋Œ€์ ์œผ๋กœ ์ ์ง€๋งŒ, ์• ๋‹ˆ๋ฉ”์ด์…˜ ๋„์ค‘ ๊ณผ๋„ํ•˜๊ฒŒ ํŠธ๋ฆฌ๊ฑฐ๋˜๋ฉด ํ”„๋ ˆ์ž„ ๋“œ๋ž์ด๋‚˜ ๋ฒ„๋ฒ…๊ฑฐ๋ฆผ(Jank)์„ ์ผ์œผ์ผœ CPU/GPU ์‚ฌ์šฉ๋Ÿ‰์„ ๋†’์ด๊ณ  ๋ชจ๋ฐ”์ผ ๊ธฐ๊ธฐ์˜ ๋ฐฐํ„ฐ๋ฆฌ๋ฅผ ์†Œ๋ชจ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [2, 6, 11]. * **์„ฑ๋Šฅ ์ตœ์ ํ™” ์ „๋žต ([[Optimization|Optimization]] Strategies):** * **CSS ์†์„ฑ ์ตœ์ ํ™”:** ๋ฆฌํ”Œ๋กœ์šฐ๋ฅผ ์œ ๋ฐœํ•˜๋Š” ์†์„ฑ(์˜ˆ: `top`, `left`, `width`, `height`) ๋Œ€์‹  `transform` ์†์„ฑ์„ ํ™œ์šฉํ•˜์—ฌ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•˜๋ฉด, ์ƒˆ๋กœ์šด ๋ ˆ์ด์•„์›ƒ์ด๋‚˜ ํŽ˜์ธํŠธ ์‚ฌ์ดํด์„ ์œ ๋ฐœํ•˜์ง€ ์•Š๊ณ  GPU ๊ฐ€์†์„ ํ†ตํ•ด ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [6, 7, 11]. * **๊ฐ€์‹œ์„ฑ ์ œ์–ด ํ™œ์šฉ:** ์š”์†Œ๋ฅผ ํ™”๋ฉด์—์„œ ์ˆจ๊ธธ ๋•Œ ๋ Œ๋” ํŠธ๋ฆฌ์—์„œ ์™„์ „ํžˆ ์ œ๊ฑฐํ•˜์—ฌ ๋ฆฌํ”Œ๋กœ์šฐ๋ฅผ ์œ ๋ฐœํ•˜๋Š” `display: none` ๋Œ€์‹ , ์‹œ๊ฐ์ ์œผ๋กœ๋งŒ ์ˆจ๊ธฐ๊ณ  ๊ณต๊ฐ„์„ ์œ ์ง€ํ•ด ๋ฆฌํŽ˜์ธํŠธ๋งŒ ์œ ๋ฐœํ•˜๋Š” `visibility: hidden`์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์œ ๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [13, 14]. * **DOM ์กฐ์ž‘ ์ตœ์†Œํ™” ๋ฐ ๋ฐฐ์น˜([[Batching|Batching]]) ์ฒ˜๋ฆฌ:** ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ๋ฐ˜๋ณต๋ฌธ ๋‚ด์—์„œ์˜ DOM ์กฐ์ž‘์„ ํ”ผํ•˜๊ณ  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ผ๊ด„ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค [6, 7]. ๋˜ํ•œ, React์™€ ๊ฐ™์ด ๊ฐ€์ƒ DOM([[Virtual DOM|Virtual DOM]])์„ ์‚ฌ์šฉํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๋ณ€๊ฒฝ๋œ ๋ถ€๋ถ„๋งŒ์„ ๊ณ„์‚ฐํ•˜์—ฌ ์‹ค์ œ DOM์— ๋ฐ˜์˜ํ•จ์œผ๋กœ์จ ๋ถˆํ•„์š”ํ•œ ๋ฆฌํ”Œ๋กœ์šฐ์™€ ๋ฆฌํŽ˜์ธํŠธ ํšŸ์ˆ˜๋ฅผ ์ค„์ด๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค [6, 15]. ## โš–๏ธ Trade-offs & Caveats No trade-offs available. ## ๐Ÿ”— Knowledge Connections - **Related Topics:** [[CSS Animations|CSS Animations]], Layout Thrashing, GPU Acceleration (Compositing), [[CSS Architecture|CSS Architecture]] - **Projects/Contexts:** ์• ๋‹ˆ๋ฉ”์ด์…˜ (transition / keyframes) ์„ฑ๋Šฅ ์ตœ์ ํ™”, [[แ„‰แ…ตแ†ฏแ„†แ…ฎแ„‹แ…ฆแ„‰แ…ฅ CSS แ„€แ…ชแ†ซแ„…แ…ตแ„’แ…กแ„‚แ…ณแ†ซ แ„‡แ…กแ†ผแ„‡แ…ฅแ†ธ|์‹ค๋ฌด์—์„œ CSS ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•]] - **Contradictions/Notes:** ๋ธŒ๋ผ์šฐ์ € ์„ฑ๋Šฅ ์ตœ์ ํ™”๋ฅผ ๋•๋Š” `will-change` ์†์„ฑ์€ ์œ ์šฉํ•˜์ง€๋งŒ, ์ตœํ›„์˜ ์ˆ˜๋‹จ์œผ๋กœ๋งŒ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์„ฑ๋Šฅ ๋ฌธ์ œ ์˜ˆ์ธก์šฉ์œผ๋กœ ๋ฌด๋ถ„๋ณ„ํ•˜๊ฒŒ ๋„ˆ๋ฌด ๋งŽ์€ ์š”์†Œ์— ๋‚จ์šฉํ•  ๊ฒฝ์šฐ, ๊ณผ๋„ํ•œ ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ ๋“ฑ ๊ทธ ์ž์ฒด๋กœ ์‹ฌ๊ฐํ•œ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ  ๊ฒฝ๊ณ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค [19, 20]. --- *Last updated: 2026-04-26* --- - **Related Topics:** [[Critical Rendering Path (CRP)|Critical Rendering Path (CRP]], Render Tree, Virtual DOM, Document Object Model (DOM), CSS Object Model ([[CSSOM|CSSOM]]), GPU Acceleration - **Projects/Contexts:** ํ”„๋ก ํŠธ์—”๋“œ ์›น ๋ Œ๋”๋ง ์„ฑ๋Šฅ ์ตœ์ ํ™”, React์˜ ์ปดํฌ๋„ŒํŠธ ์•„ํ‚คํ…์ฒ˜ ๋ฐ ๋ Œ๋”๋ง ์ตœ์ ํ™”([[Reconciliation|Reconciliation]]) - **Contradictions/Notes:** ์†Œ์Šค์— ๊ด€๋ จ ์ •๋ณด๊ฐ€ ๋ถ€์กฑํ•ฉ๋‹ˆ๋‹ค. (์ œ๊ณต๋œ ๋ชจ๋“  ์†Œ์Šค๋Š” ๋ฆฌํ”Œ๋กœ์šฐ์™€ ๋ฆฌํŽ˜์ธํŠธ์˜ ํŠน์„ฑ ๋ฐ ์ด๋ฅผ ์ตœ์†Œํ™”ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ตœ์ ํ™” ์›์น™์— ๋Œ€ํ•ด ๋ชจ์ˆœ ์—†์ด ์ผ์น˜๋œ ๊ฒฌํ•ด๋ฅผ ๋ณด์ž…๋‹ˆ๋‹ค.) --- *Last updated: 2026-04-25*