[๊ณผ์ œ] ์ž๊ธฐ์†Œ๊ฐœ ํŽ˜์ด์ง€ ์ œ์ž‘

    2์ฃผ์ฐจ ๋งˆ์ง€๋ง‰ ๋‚ ์˜ ๊ณผ์ œ๋กœ HTML, CSS, JavaScript๋ฅผ ์ด์šฉํ•ด์„œ ์ž๊ธฐ์†Œ๊ฐœ ํŽ˜์ด์ง€๋ฅผ ์ œ์ž‘ํ•˜๋Š” ๊ณผ์ œ๊ฐ€ ์ฃผ์–ด์กŒ๋‹ค. ๋ฉ‹์‚ฌ์—์„œ ํ™œ๋™ํ–ˆ์„ ๋•Œ๋„ HTML/CSS๋ฅผ ๋ฐฐ์šฐ๊ณ  ๊ฐ€๋ณ๊ฒŒ ์ž๊ธฐ์†Œ๊ฐœ ํŽ˜์ด์ง€ ์ œ์ž‘ ๊ณผ์ œ๋ฅผ ํ–ˆ์—ˆ๋Š”๋ฐ, ํ™•์‹คํžˆ ๊ทธ ๋•Œ๋ณด๋‹ค ์ด๋Ÿฐ์ €๋Ÿฐ ์š”์†Œ๋“ค์„ ์ œ๋ฒ• ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๊ฒŒ ๋œ ๊ฒƒ์„ ๋А๊ผˆ๋‹ค. ๊ทธ ๋•Œ ๊ฐ™์ด ํ™œ๋™ํ–ˆ๋˜ ๋™์•„๋ฆฌ์› ์ค‘, ์›น ํ™”๋ฉด์— ํŽ˜์ด์ง€๋ฅผ ๊ฝ‰ ์ฑ„์›Œ์„œ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋“ค์„ ์Šคํฌ๋กค ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ œ์ž‘ํ•˜์‹  ๋ถ„์ด ๊ณ„์…จ๋Š”๋ฐ, ๋‹น์‹œ ์›น ๊ฐœ๋ฐœ ํ–‡๋ณ‘์•„๋ฆฌ์˜€๋˜ ๋‚˜๋Š” ๊ทธ๋Ÿฐ ์‹ ์„ธ๊ณ„(?) ๋””์ž์ธ์€ ์ฒ˜์Œ ์ ‘ํ•ด๋ดค์—ˆ๊ณ  ๋‹ค์Œ์— ํ•œ ๋ฒˆ ์ €๋ ‡๊ฒŒ ๋งŒ๋“ค์–ด ๋ณด๊ณ ์‹ถ๋‹ค๋Š” ์ƒ๊ฐ์„ ํ–ˆ์—ˆ๋‹ค. ๊ทธ ์™ธ์—๋„ ๋Šฅ๋ ฅ์ด ๋ถ€์กฑํ•ด์„œ ํ•ด๋ณด๊ณ ๋Š” ์‹ถ์ง€๋งŒ ๊ตฌํ˜„์„ ๋ชปํ–ˆ๋˜ ๊ฒƒ๋“ค์ด ๋งŽ์•˜์–ด์„œ, ์ด๋ฒˆ ๊ณผ์ œ์˜ ํŽ˜์ด์ง€ ๋””์ž์ธ์€ ๋‹น์‹œ๋ฅผ ํšŒ์ƒํ•˜๋ฉด์„œ ํ–ˆ๋‹ค. ๊ณผ์ œ์˜ ์ฃผ์ œ๊ฐ€ ํ•„์ˆ˜ ๋‚ด์šฉ๋“ค์„ ์‚ฝ์ž…ํ•˜..

    [CS] DOCTYPE

    1. DOCTYPE Document Type์˜ ์•ฝ์ž๋กœ, HTML์ด ์–ด๋–ค ๋ฒ„์ „์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ๋Š”์ง€ ๋ฏธ๋ฆฌ ์„ ์–ธํ•˜์—ฌ ์›น๋ธŒ๋ผ์šฐ์ €๊ฐ€ ๋‚ด์šฉ์„ ์˜ฌ๋ฐ”๋กœ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. ์œผ๋กœ ์„ ์–ธํ•˜๋Š”๋ฐ, ์ด๊ฑธ ํ•ด์ฃผ์ง€ ์•Š์œผ๋ฉด ํ˜ธํ™˜ ๋ชจ๋“œ(quirks mode)๋กœ ๋™์ž‘ํ•œ๋‹ค. ํ˜ธํ™˜ ๋ชจ๋“œ์˜ ๊ฒฝ์šฐ ๊ฐ ๋ธŒ๋ผ์šฐ์ €๋งˆ๋‹ค ๋ฌธ์„œ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ์‹์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ํฌ๋กœ์Šค ๋ธŒ๋ผ์šฐ์ง• ์ด์Šˆ๊ฐ€ ํ›จ์”ฌ ์‹ฌํ•ด์ง€๊ฒŒ ๋œ๋‹ค. DOCTYPE ์„ ์–ธ X: ์ฟผํฌ ๋ชจ๋“œ๋กœ ๋ Œ๋”๋ง → ๋ธŒ๋ผ์šฐ์ €๋งˆ๋‹ค ๋‹ค๋ฅธ ๊ฒฐ๊ณผ๋ฌผ ์ถœ๋ ฅ DOCTYPE ์„ ์–ธ O: ํ‘œ์ค€ ๋ชจ๋“œ๋กœ ๋ Œ๋”๋ง → ๋ธŒ๋ผ์šฐ์ €๋ณ„๋กœ ๊ฐ™์€ ๋ ˆ์ด์•„์›ƒ ๊ฒฐ๊ณผ๋ฌผ ์ถœ๋ ฅ 2. DTD (Document Type Definition) DTD(Document Type Definition)๋ž€ ๋ฌธ์„œ ํ˜•์‹์„ ์ •์˜ํ•ด๋†“์€ ๊ฒƒ์œผ๋กœ DOCTYPE์„ ๋ช…์‹œํ•  ๋•Œ ์‚ฌ์šฉ..

    [CS] CSS์™€ JS ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ์ฐจ์ด์ 

    1. CSS ์• ๋‹ˆ๋ฉ”์ด์…˜ vs JS ์• ๋‹ˆ๋ฉ”์ด์…˜ ์›น์‚ฌ์ดํŠธ์— ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๋ฅผ ๋ถ€์—ฌํ•  ๋•Œ CSS์˜ transiton / animation ์†์„ฑ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ , JS์˜ setInterval() / requestAnimationFrame() ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ฐ๊ฐ์„ ์‚ฌ์šฉํ•  ๋•Œ์˜ ํŠน์ง•์ด ๋‹ค๋ฅด๊ณ  ์žฅ๋‹จ์ ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋–ค ์ฐจ์ด๊ฐ€ ์žˆ๋Š”์ง€ ์•Œ์•„๋‘๋Š” ๊ฒƒ์ด ์ข‹๋‹ค. ๊ธฐ์ˆ ๋ฉด์ ‘์—๋„ ๋‚˜์˜จ์ ์ด ์žˆ๋‹ค. 2. CSS ์• ๋‹ˆ๋ฉ”์ด์…˜ ์ผ๋ฐ˜์ ์œผ๋กœ, ๋งˆ์šฐ์Šค๋ฅผ ์˜ฌ๋ ธ์„ ๋•Œ ํ˜น์€ ๋ฉ”๋‰ด ๋ฒ„ํŠผ์˜ ์ „ํ™˜๊ณผ ๊ฐ™์€ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์˜ ๊ฒฝ์šฐ CSS๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, 200 ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜•์„ ์™ผ์ชฝ ์œ„์—์„œ ์˜ค๋ฅธ์ชฝ ์•„๋ž˜๋กœ 350px ์›€์ง์ด๊ฒŒ ํ•˜๋Š” ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๊ตฌํ˜„ํ•œ๋‹ค๊ณ  ํ•˜๋ฉด, transform์˜ translate๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ..

    [CS] CI์™€ CD

    1. CI (Continuous Integration, ์ง€์†์  ํ†ตํ•ฉ) CI๋Š” ๋นŒ๋“œ์™€ ํ…Œ์ŠคํŠธ๋ฅผ ์ž๋™ํ™”ํ•ด์„œ ๊ณต์œ  ์ €์žฅ์†Œ์— ๋ณ‘ํ•ฉ์‹œํ‚ค๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ๋œปํ•œ๋‹ค. git๊ณผ ๊ฐ™์€ ๋ฒ„์ „๊ด€๋ฆฌ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•  ๋•Œ, ์—ฌ๋Ÿฌ๋ช…์˜ ๊ฐœ๋ฐœ์ž๊ฐ€ ํ•˜๋‚˜์˜ ๊ณต์œ  ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. ์ด๋ ‡๊ฒŒ ๋˜๋ฉด ์ƒˆ๋กœ์šด ์ฝ”๋“œ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ €์žฅ์†Œ์— ํ†ตํ•ฉ๋˜์ง€ ์•Š์„ ๊ฒฝ์šฐ ์„œ๋กœ ์ถฉ๋Œํ•  ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋นŒ๋“œ/ํ…Œ์ŠคํŠธ ์ž๋™ํ™”๋ถ€ํ„ฐ ์ฝ”๋“œ์˜ ์ผ๊ด€์„ฑ(Consistency)์„ ์ œ๊ณตํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ง€์†์ ์œผ๋กœ ํ†ตํ•ฉํ•œ๋‹ค๋Š” ์šฉ์–ด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰, ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ƒˆ๋กœ์šด ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ •๊ธฐ์ ์œผ๋กœ ๋นŒ๋“œ ๋ฐ ํ…Œ์ŠคํŠธ๋˜์–ด ๊ณต์œ  ๋ ˆํฌ์ง€ํ† ๋ฆฌ์— ํ†ตํ•ฉ๋˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค. CI์˜ ํ•ต์‹ฌ ๋ชฉํ‘œ๋Š” ๋ฒ„๊ทธ๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ์ฐพ์•„ ํ•ด๊ฒฐํ•˜๊ณ , ์†Œํ”„ํŠธ์›จ์–ด์˜ ํ’ˆ์งˆ์„ ๊ฐœ์„ ํ•˜๊ณ , ์ƒˆ๋กœ์šด ์—…๋ฐ์ดํŠธ์˜ ๊ฒ€์ฆ ๋ฐ ๋ฆด๋ฆฌ..

    [CS] ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ์™€ ํŠธ๋žœ์ŠคํŒŒ์ผ๋Ÿฌ

    1. ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ(Module bundler) 1-1. ๋ชจ๋“ˆ(Module) ๋ชจ๋“ˆ์€ ์—ฌ๋Ÿฌ ๊ธฐ๋Šฅ๋“ค์— ๊ด€ํ•œ ์ฝ”๋“œ๋“ค์ด ํ•œ๋ฐ ๋ชจ์—ฌ์žˆ๋Š” ํŒŒ์ผ๋กœ์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์šฉ๋„๋กœ ์‚ฌ์šฉ๋œ๋‹ค. ์œ ์ง€๋ณด์ˆ˜์„ฑ ๊ธฐ๋Šฅ๋“ค์ด ๋ชจ๋“ˆํ™”๊ฐ€ ์ž˜ ๋˜์–ด ์žˆ๋‹ค๋ฉด, ์˜์กด์„ฑ์„ ๊ทธ๋งŒํผ ์ค„์ผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์–ด๋–ค ๊ธฐ๋Šฅ์„ ๊ฐœ์„ ํ•œ๋‹ค๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ๋•Œ ํŽธํ•˜๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋„ค์ž„์ŠคํŽ˜์ด์Šคํ™” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์ „์—ญ๋ณ€์ˆ˜๋Š” ์ „์—ญ๊ณต๊ฐ„์„ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์ง€๋‹ค ๋ณด๋ฉด ๋„ค์ž„์ด ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค. ์ด ๋•Œ ๋ชจ๋“ˆํ™”๋ฅผ ํ•˜๋ฉด, ๊ฐ ๋ชจ๋“ˆ๋งŒ์˜ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ๊ฐ€์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ค‘๋ณต๋˜๋Š” ๋ณ€์ˆ˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค. ์žฌ์‚ฌ์šฉ์„ฑ ๋˜‘๊ฐ™์€ ์ฝ”๋“œ๋ฅผ ๋ฐ˜๋ณตํ•˜์—ฌ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ๋ชจ๋“ˆ๋กœ ๋ถ„๋ฆฌ์‹œ์ผœ์„œ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 1-2. ๋ชจ๋“ˆ ๋ฒˆ๋“ค๋Ÿฌ(Module bundler) ํ˜„๋Œ€์˜ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์€ ๋ชจ๋“ˆ๋‹จ์œ„๋กœ ํŒŒ์ผ์„ ์—ฎ์–ด์„œ ๊ฐœ๋ฐœํ•˜..

    [CS] BOM๊ณผ DOM

    1. BOM (Browser Object Model) ๋ธŒ๋ผ์šฐ์ €์˜ ์ฐฝ์ด๋‚˜ ํ”„๋ ˆ์ž„์„ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ ์œผ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฐ์ฒด๋ชจ๋ธ์ด๋‹ค. ์ด๋ฅผ ํ†ตํ•ด์„œ ๋ธŒ๋ผ์šฐ์ €์˜ ์ƒˆ ์ฐฝ์„ ์—ด๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์„œ๋กœ ์ด๋™ํ•˜๋Š” ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ์‹คํ–‰์‹œํ‚ฌ ์ˆ˜ ์žˆ๋‹ค. ์ „์—ญ๊ฐ์ฒด๋กœ window๊ฐ€ ์žˆ์œผ๋ฉฐ, ํ•˜์œ„ ๊ฐ์ฒด๋“ค๋กœ location, navigator, document, screen, history๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. 2. DOM (Document Object Model) ์›นํŽ˜์ด์ง€๋ฅผ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ ์œผ๋กœ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ฐ์ฒด๋ชจ๋ธ์ด๋‹ค. ์ตœ์ƒ์œ„ ์ธํ„ฐํŽ˜์ด์Šค๋กœ Node๊ฐ€ ์žˆ๊ณ , ์•„๋ž˜ ์ด๋ฏธ์ง€์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ๋‚˜ํƒ€๋‚˜๊ฒŒ ๋œ๋‹ค. ์ด ๋•Œ, ๋‹จ์ˆœํ•œ ์—˜๋ฆฌ๋จผํŠธ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํ…์ŠคํŠธ๋‚˜ ์ฃผ์„ ๋“ฑ๋„ DOM ํŠธ๋ฆฌ์— ํฌํ•จ๋˜๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค. DOM์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด์„œ๋Š” getEl..

    [CS] ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ณผ์ •

    ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์ด ํ•„์š”ํ•˜๊ณ , ์›น ๋ธŒ๋ผ์šฐ์ €๋Š” ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์—”์ง„์„ ๋‚ด์žฅํ•˜๊ณ  ์žˆ๋‹ค. ๋ธŒ๋ผ์šฐ์ €๋งˆ๋‹ค ์—”์ง„์˜ ์ข…๋ฅ˜๊ฐ€ ๋‹ค๋ฅด์ง€๋งŒ, ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ์‹์€ ๋น„์Šทํ•˜๋‹ค. (V8, SpiderMonkey, Javascript core ๋“ฑ์˜ ๊ตฌํ˜„์ด ๊ฐ๊ฐ ๋‹ค๋ฅด๋‹ค.) 1. ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๋งŒ๋‚˜๋ฉด ํŒŒ์‹ฑํ•˜์—ฌ AST(Abstract Syntax Tree)๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค. 2. ์ธํ„ฐํ”„๋ฆฌํ„ฐ(Interpreter)๋Š” AST๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ”์ดํŠธ์ฝ”๋“œ(Bytecode)๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. 3. ์ธํ„ฐํ”„๋ฆฌํ„ฐ๊ฐ€ ๋ฐ”์ดํŠธ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ๋•Œ, ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ํ•จ์ˆ˜ ๋ฐ ํƒ€์ž… ์ •๋ณด ๋“ฑ์ด ์žˆ๋Š” ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ(Profiling data)์™€ ๊ฐ™์ด ์ตœ์ ํ™” ์ปดํŒŒ์ผ๋Ÿฌ(Optimizing compiler)์—๊ฒŒ ๋ณด๋‚ธ๋‹ค. 4. ์ตœ์ ํ™” ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ด..

    [CS] ๋ธŒ๋ผ์šฐ์ €์˜ ๋ Œ๋”๋ง ์›๋ฆฌ

    ๋ Œ๋”๋ง์ด๋ž€ HTML, CSS, JavaScript ๋“ฑ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ ๋ฌธ์„œ๊ฐ€ ๋ธŒ๋ผ์šฐ์ €์— ์ถœ๋ ฅ๋˜๋Š” ๊ณผ์ •์„ ๋งํ•œ๋‹ค. ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ํ™”๋ฉด์— ๋‚˜ํƒ€๋‚˜๋Š” ์š”์†Œ๋ฅผ ๋ Œ๋”๋ง ํ•  ๋•Œ, ์›นํ‚ท(Webkit)์ด๋‚˜ ๊ฒŒ์ฝ”(Gecko) ๋“ฑ๊ณผ ๊ฐ™์€ ๋ Œ๋”๋ง ์—”์ง„์„ ์‚ฌ์šฉํ•œ๋‹ค. ๋ Œ๋”๋ง ์—”์ง„์ด HTML, CSS, JavaScript๋กœ ๋ Œ๋”๋งํ•  ๋•Œ CRP(Critical Rendering Path) ๋ผ๋Š” ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, ๋‹ค์Œ ๋‹จ๊ณ„๋“ค๋กœ ์ด๋ฃจ์–ด์ง„๋‹ค. HTML ํŒŒ์‹ฑ ํ›„, DOM(Document Object Model) ํŠธ๋ฆฌ ๊ตฌ์ถ• ํŒŒ์‹ฑ(Parsing) : ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์ „์†ก๋ฐ›์€ ๋ฌธ์„œ์˜ ๋ฌธ์ž์—ด์„ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๊ณผ์ • CSS ํŒŒ์‹ฑ ํ›„, CSSOM(CSS Object Model) ํŠธ๋ฆฌ ๊ตฌ์ถ• JavaScript ์‹คํ–‰ ์ด ๋•Œ, HTM..