waffle
์™€ํ”Œ๊ณต์žฅ
waffle
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (72)
    • ๐Ÿ“’ Daily Log (2)
    • ๐Ÿ”จ Dev_BE (5)
      • ๊ฐœ๋…์ •๋ฆฌ (4)
      • ๊ธฐ๋ก (1)
    • ๐Ÿ”จ Dev_FE (4)
    • ๐Ÿ”จ Dev_DB (1)
    • โš™ Dev_Ops (0)
    • ๐Ÿ”ก Lang (2)
      • Python (2)
    • ๐Ÿ’ก ํ”„๋กœ์ ํŠธ (9)
      • Base (1)
      • ์•„๋Œ€๋ฐ€๋งต (8)
    • ๐Ÿƒ๐Ÿป ์™ธ๋ถ€ํ™œ๋™ (2)
      • [ํ”„๋ฆฌ์ฝ”์Šค] ์šฐ์•„ํ•œํ…Œํฌ์ฝ”์Šค 7๊ธฐ - BE (2)
    • ๐Ÿ“• [STUDY] ๊ฐœ๋ฐœ (13)
      • [STUDY] ์•Œ๊ณ ๋ฆฌ์ฆ˜ (9)
      • ๋™๊ณ„ ์Šคํ„ฐ๋”” [Do-iT: ์›นํŒฉ] (2021) (4)
    • ๐Ÿ“™ [STUDY] AI (2)
      • Tensorflow (2)
    • ๐Ÿ” ๋ณด์•ˆ,์ •๋ณด๋ณดํ˜ธ (32)
      • CTF (2)
      • ๐Ÿ“˜ [STUDY] ํฌ๋ Œ์‹ (15)
      • ๐Ÿ“˜ [STUDY] ์ทจ์•ฝ์  (4)
      • ๐Ÿ“˜ [STYDY] ๋ฆฌ๋ฒ„์‹ฑ (11)
    • ๐Ÿ“” IT ๋ฒ•๋ฅ  (0)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • gdb
  • Weekly
  • Java
  • ์—ฐ์Šต_์ž๋ฃŒ๊ตฌ์กฐ
  • ๋ฐ์ผ๋ฆฌ์•Œ๊ณ 
  • ๋ฌธ์ž์—ด
  • JAVA_API
  • write-up
  • ์šฐํ…Œ์ฝ”
  • javascript
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • js
  • dopwn
  • til
  • ์ž๋ฃŒ๊ตฌ์กฐ
  • sql
  • ๊ฐœ๋ฐœ
  • ๋ฐฑ์ค€
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ_๊ณ ๋“์ 
  • API
  • scrum
  • ํ”„๋ฆฌ์ฝ”์Šค
  • ์ˆ˜ํ•™_1(์—ฐ์Šต)
  • ์ˆ˜ํ•™_1
  • ์šฐ์•„ํ•œํ…Œํฌ์ฝ”์Šค
  • ๊ฐœ๋ฐœ๋ฐฑ์„œ
  • ์•„์ฃผ๋Œ€_์•Œ๊ณ ๋ฆฌ์ฆ˜_๊ต์œก
  • reversing
  • ์šฐํ…Œ์ฝ”_7๊ธฐ

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

ํ‹ฐ์Šคํ† ๋ฆฌ

hELLO ยท Designed By ์ •์ƒ์šฐ.
waffle

์™€ํ”Œ๊ณต์žฅ

[ CSS ] CSS ๋ Œ๋”๋ง ํ๋ฆ„
๐Ÿ“• [STUDY] ๊ฐœ๋ฐœ/๋™๊ณ„ ์Šคํ„ฐ๋”” [Do-iT: ์›นํŒฉ] (2021)

[ CSS ] CSS ๋ Œ๋”๋ง ํ๋ฆ„

2022. 2. 13. 18:58
728x90

# Reference

 

aproid blog - CSS Transition ์„ฑ๋Šฅ ์ตœ์ ํ™” by aproid

https://aproid.github.io/2019/03/21/transition-optimize/

 

CSS Transition ์„ฑ๋Šฅ ์ตœ์ ํ™” — Aproid

CSS3์˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์ค‘ ํ•˜๋‚˜์ธ Transition, ํ•˜์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์˜ ๊ฐœ๋ฐœ์ž๋Š” Transition ์‚ฌ์šฉ์˜ ์ฃผ์˜์ ์„ ์•Œ์ง€ ๋ชปํ•˜๊ณ  ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ฐ”์ผ๊ฐ™์€ ์„ฑ๋Šฅ์ด ์ข‹์ง€ ๋ชปํ•œ ๊ธฐ๊ธฐ์—์„œ ๋ถ€๋“œ๋Ÿฌ์šด ํšจ๊ณผ๋ฅผ ๋ณด์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ž

aproid.github.io

 

yceffort blog - CSS ์„ฑ๋Šฅ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ

https://yceffort.kr/2021/03/improve-css-performance#css%EB%8A%94-%EC%96%B4%EB%96%BB%EA%B2%8C-%EB%8F%99%EC%9E%91%ED%95%98%EB%8A%94%EA%B0%80

 

Home

yceffort

yceffort.kr

 

wonism blog - Critical Rendering Path๋ž€?

https://wonism.github.io/critical-rendering-path/

 

WONISM's Blog

WONISM's Blog

wonism.github.io

 

0) ํ•™์Šต๊ฐœ์š”

 

์•„์ฃผ๋Œ€ํ•™๊ต ์ค‘์•™๋™์•„๋ฆฌ Do-iT 21๋…„ ๋™๊ณ„ ์›นํŒฉ ์Šคํ„ฐ๋””์—์„œ ํ•™์Šตํ•œ ๋‚ด์šฉ๋“ค์„ ๋ธ”๋กœ๊ทธ๋กœ ์ •๋ฆฌํ•˜๋ฉฐ ๋ณต์Šตํ•˜๊ธฐ ์œ„ํ•จ

 

1) CSS์˜ HTML ์ ์šฉ์ˆœ์„œ

 

CSS๋Š” HTML์ด ๋กœ๋”ฉ๋œ ์ดํ›„ ํŒŒ์ผ ๋‚ด์— ํฌํ•จ๋œ css url์„ ํ†ตํ•ด ๋กœ๋“œ๋ฉ๋‹ˆ๋‹ค.

๋กœ๋“œ๋œ CSS๋Š” ์ด 4๊ฐœ์˜ ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์น˜๋ฉฐ HTML์— ์ ์šฉ๋˜๋Š”๋ฐ,

์ด ๋‹จ๊ณ„๋Š” ์ฃผ์š” ๋ Œ๋”๋ง ๊ฒฝ๋กœ (Critical Rendering Path, ์ดํ•˜ CRP)์—์„œ CSS์™€ ๊ด€๋ จ๋œ ๋‹จ๊ณ„๋งŒ ์ •๋ฆฌํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

1. CSS ๊ฐ์ฒด ๋ชจ๋ธ ๋งŒ๋“ค๊ธฐ ( CSSOM )

CRP์— ๋”ฐ๋ผ ์ด ๋‹จ๊ณ„ ์ด์ „์— DOM ํŠธ๋ฆฌ๊ฐ€ ์™„์„ฑ๋ฉ๋‹ˆ๋‹ค.

CSSOM์€ DOM๊ณผ ๋น„์Šทํ•˜๊ฒŒ CSS๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ์ฒด๊ธฐ๋ฐ˜ ๋ชจ๋ธ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.

 

CSSOM์˜ ํŠน์ง•์€ ๋ถ€๋ถ„์ ์ธ ์‹คํ–‰์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์ธ๋ฐ, ๋‹ค์‹œ๋งํ•ด ๋ชจ๋“  CSS๊ฐ€ ํŒŒ์‹ฑ๋˜๊ธฐ ์ „๊นŒ์ง€ ๋‹ค๋ฅธ ์ž‘์—…์€ ๋ชจ๋‘ ์ผ์‹œ์ ์œผ๋กœ ์ค‘์ง€๋ฉ๋‹ˆ๋‹ค.

์ด๋Š” ๋’ค์— ์ถ”๊ฐ€๋œ css๊ฐ€ ์ด์ „ css ์†์„ฑ์„ ๋ฎ๋Š” css์˜ ๊ตฌ์กฐ ์ƒ ์ž˜๋ชป๋œ css๊ฐ€ ์ ์šฉ๋˜๋Š” ๊ฒƒ์„ ๋ง‰๊ธฐ ์œ„ํ•œ ๋Œ€์•ˆ์ž…๋‹ˆ๋‹ค.

 

2. ๋ Œ๋” ํŠธ๋ฆฌ ๋งŒ๋“ค๊ธฐ

์•ž์„œ ์ƒ์„ฑ๋œ DOM๊ณผ CSSOM์„ ํ•ฉ์น˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

์ตœ์ข…์ ์œผ๋กœ ํ™”๋ฉด์— ๋ Œ๋”๋ง๋˜๋Š” ์š”์†Œ๋“ค๋งŒ ์ด ํŠธ๋ฆฌ์— ํฌํ•จ๋˜๋Š”๋ฐ,

์ด ๋•Œ๋ฌธ์— "display: none;"์˜ต์…˜์œผ๋กœ ์ˆจ๊ฒจ์ง„ ์š”์†Œ๋Š” ์ด ํŠธ๋ฆฌ์—์„œ ์ œ์™ธ๋ฉ๋‹ˆ๋‹ค.

 

3. ๋ ˆ์ด์•„์›ƒ

๋ Œ๋”ํŠธ๋ฆฌ์˜ ๊ฐ ๊ฐ์ฒด์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ์šฉ๋Ÿ‰๊ณผ ์œ„์น˜๋ฅผ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.

 

4. ํŽ˜์ธํŠธ

๋ Œ๋”ํŠธ๋ฆฌ๋ฅผ ์ˆœํšŒํ•˜๋ฉด์„œ ํ™”๋ฉด์— CSS๊ฐ€ ์ž…ํ˜€์ง„ ์š”์†Œ๋“ค์„ ๋ Œ๋”๋งํ•ฉ๋‹ˆ๋‹ค.

 

 

2) CSS ๋‚ด ์—ฐ์‚ฐ์ˆœ์„œ

์œ„์˜ ๊ณผ์ •๋“ค ์ค‘ 3, 4 ๋‹จ๊ณ„๋Š” CSS ์ •๋ณด๋“ค์„ ์‹ค์ œ๋กœ ํ‘œํ˜„ํ•˜๊ธฐ ์œ„ํ•œ ์—ฐ์‚ฐ์ด ์ง„ํ–‰๋˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

์ด ๊ณผ์ •์„ ์กฐ๊ธˆ ๋” ์ž์„ธํžˆ ๊ตฌ๋ถ„ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ์ •๋ฆฌ๋ฉ๋‹ˆ๋‹ค.

 

1. Styles

์œ„ ๋‹จ๊ณ„๋“ค ์ค‘ 3๋ฒˆ์งธ์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

์š”์†Œ์— ์ ์šฉํ•  ์Šคํƒ€์ผ์„ ๊ณ„์‚ฐํ•˜๋Š” ๊ณผ์ •์ž…๋‹ˆ๋‹ค.

 

2. Layout

3๋ฒˆ์งธ ๋‹จ๊ณ„์— ํฌํ•จ๋˜์ง€๋งŒ Styles ๊ณผ์ •์ด ์™„๋ฃŒ๋œ ํ›„ ์‹คํ–‰๋˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

css ์˜ต์…˜๋“ค ์ค‘ ์•„๋ž˜ ์˜ต์…˜๋“ค์ด ์ด ๋‹จ๊ณ„์—์„œ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜: aproid blog (https://aproid.github.io/2019/03/21/transition-optimize/)

 

3. Paint

4๋ฒˆ์งธ ๋‹จ๊ณ„์— ํ•ด๋‹นํ•˜๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค. ๊ฐ ์š”์†Œ๋“ค์— ํ”ฝ์…€์„ ์ฑ„์šฐ๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

css ์˜ต์…˜๋“ค ์ค‘ ๋Œ€ํ‘œ์ ์œผ๋กœ ์•„๋ž˜ ์˜ต์…˜๋“ค์ด ์ด ๋‹จ๊ณ„์—์„œ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ๋‹จ๊ณ„์— ํฌํ•จ๋˜์ง€ ์•Š๋Š” ๋‹ค๋ฅธ ์˜ต์…˜๋“ค๋„ ์ด ๋‹จ๊ณ„์—์„œ ๊ณ„์‚ฐ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜: aproid blog (https://aproid.github.io/2019/03/21/transition-optimize/)

 

4. Composite

๊ฐ€์žฅ ๋งˆ์ง€๋ง‰ ๋‹จ๊ณ„๋กœ, ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ™”๋ฉด์— ๊ทธ๋ ค๋‚ผ ๋•Œ ์ ์šฉ๋˜๋Š” ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค.

2๊ฐœ์˜ ์˜ต์…˜๋งŒ ์ด ๋‹จ๊ณ„์—์„œ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

transform

opacity

 

 

3) CSS ํŒŒ์‹ฑ ํŠน์ง•: ๋ Œ๋”๋ง ์ฐจ๋‹จ

HTML๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, CSS๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ CSSOM์ด ์ƒ์„ฑ๋˜๊ธฐ ์ „๊นŒ์ง€ ๋‹ค๋ฅธ ๋ชจ๋“  ์ปจํ…์ธ ๋ฅผ ๋ Œ๋”๋งํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‹จ, media๋ฅผ ํ†ตํ•ด ์กฐ๊ฑด์„ ์„ค์ •ํ•ด์ค„ ๊ฒฝ์šฐ ํ•ด๋‹น ์กฐ๊ฑด์ด ๋งŒ์กฑ๋  ๋•Œ์—๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•

'๐Ÿ“• [STUDY] ๊ฐœ๋ฐœ > ๋™๊ณ„ ์Šคํ„ฐ๋”” [Do-iT: ์›นํŒฉ] (2021)' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[ JS ] ์•„ํ† ๋ฏน ์ปดํฌ๋„ŒํŠธ ๋””์ž์ธ ๊ฐœ๋ฐœ ํŒจํ„ด  (0) 2022.02.09
[ JS ] Babel & EsLint  (0) 2022.01.24
[ JS ] Prototype  (0) 2022.01.06
    '๐Ÿ“• [STUDY] ๊ฐœ๋ฐœ/๋™๊ณ„ ์Šคํ„ฐ๋”” [Do-iT: ์›นํŒฉ] (2021)' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • [ JS ] ์•„ํ† ๋ฏน ์ปดํฌ๋„ŒํŠธ ๋””์ž์ธ ๊ฐœ๋ฐœ ํŒจํ„ด
    • [ JS ] Babel & EsLint
    • [ JS ] Prototype
    waffle
    waffle
    ๊ฐœ๋ฐœ๊ธฐ์ˆ  ๊ด€๋ จ ๊ธ€๋“ค์€ velog์— ์žˆ์Šต๋‹ˆ๋‹ค :) (https://velog.io/@cm_waffle) Developer waffle = new Waffle();

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”