joooing 2021. 3. 13. 15:33
๋ฐ˜์‘ํ˜•

๐ŸŽ ์˜ค๋Š˜ ํ•œ ์ผ

React, CSS ์—ฐ์Šต
ํ•˜๋‚˜์˜ CSS ํŒŒ์ผ์—์„œ ๋ชจ๋“  ์Šคํƒ€์ผ๋ง์„ ํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ, React์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ์œ„์ฃผ๋กœ ์Šคํƒ€์ผ๋ง์„ ํ•ด๋ณด๋ ค๊ณ  ์—ฐ์Šตํ–ˆ๋‹ค. SCSS๋กœ ๊ธฐ๋ณธ์ ์ธ ์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ณ , ๋ช‡๋ช‡ ์ปดํฌ๋„ŒํŠธ๋“ค์€ styled-components ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•ด ์Šคํƒ€์ผ์„ ์ ์šฉํ–ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ ์ตํžŒ ๊ฒƒ ๊ฐ™์€๋ฐ ์–ธ์ œ ๋”ฐ๋กœ ํŒŒ์ผ์— ์ž‘์„ฑํ•ด์•ผํ•˜๊ณ , ์–ธ์ œ styled-components ๋กœ ์ •์˜ํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ทธ ๊ฒฝ๊ณ„์— ๋Œ€ํ•ด์„œ๋Š” ์ข€ ๋” ๊ณต๋ถ€ํ•  ๊ฒƒ ๊ฐ™๋‹ค. ์ถ”๊ฐ€์ ์œผ๋กœ ์ผ์ • ํฌ๊ธฐ ์ดํ•˜๋กœ ์ค„์–ด๋“ค๋ฉด media-query๋ฅผ ์ด์šฉํ•ด ๋ ˆ์ด์•„์›ƒ์ด ๋ฐ”๋€Œ๋„๋ก ๋ฐ˜์‘ํ˜• ์›น์„ ๊ตฌ์ถ•ํ•˜๋Š” ์—ฐ์Šต๋„ ํ–ˆ๊ณ , ์Šคํฌ๋กค ์œ„์น˜์— ๋”ฐ๋ผ ๋‹ค๋ฅธ ํšจ๊ณผ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ธํ„ฐ๋ž™ํ‹ฐ๋ธŒํ•œ ํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค์–ด๋ณด๊ธฐ๋„ ํ–ˆ๋‹ค. ์˜ค๋žœ๋งŒ์— CSS์— ์ง‘์ค‘ํ•ด๋ณด๋‹ˆ๊นŒ ์ด๋ฒคํŠธ๋‚˜ position, transition์— ๋Œ€ํ•œ ๊ณต๋ถ€๊ฐ€ ๋ถ€์กฑํ•˜๋‹ค๋Š” ๊ฒƒ๋„ ์ƒ๊ฐ๋„ ๋“ค์—ˆ๊ณ , ์• ๋‹ˆ๋ฉ”์ด์…˜์ด ํ™”๋ คํ•ด์ง€๊ณ  ๋ณต์žกํ•ด์งˆ์ˆ˜๋ก ์ˆ˜ํ•™ ๊ณต์‹๋“ค์ด ํ•„์š”ํ•ด์ง€๋Š” ๊ฒƒ ๊ฐ™์•„์„œ ์ด ๋ถ€๋ถ„์— ๋Œ€ํ•ด์„œ๋„ ์ข€ ๋” ๋ณด์ถฉ์„ ํ•ด์•ผ๊ฒ ๋‹ค.

 

๐ŸŽ ๊ธฐ์–ตํ•  ๊ฒƒ

html data-* ์†์„ฑ
HTML ์š”์†Œ์— ์ถ”๊ฐ€ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์†์„ฑ์œผ๋กœ dataset ์ด๋ผ๋Š” ์†์„ฑ์„ ํ†ตํ•ด ์ฝ๊ณ  ์“ธ ์ˆ˜ ์žˆ๋‹ค.

 

๐ŸŽ ๋” ๊ณต๋ถ€ํ•  ๊ฒƒ

โœ”๏ธ ์ด๋ฒคํŠธ ์ข…๋ฅ˜
โœ”๏ธ position
โœ”๏ธ animation, transition

 

 

โœ๏ธ ๋‹ค์Œ ์ฃผ๋ถ€ํ„ฐ ํ”„๋กœ์ ํŠธ๊ฐ€ ์‹œ์ž‘๋œ๋‹ค! ์ฃผ๋ง ์ดํ‹€์˜ ์‹œ๊ฐ„ ๋™์•ˆ์€ ํฐ ์š•์‹ฌ ๋ถ€๋ฆฌ์ง€ ์•Š๊ณ , ์ง€๊ธˆ๊นŒ์ง€ ๋ฐฐ์› ๋˜ ๊ฒƒ๋“ค์„ ๋ณต์Šตํ•˜๋ฉด์„œ ์™„์ „ํžˆ ์ตํ˜€๋‘๋„๋ก ํ•ด์•ผ๊ฒ ๋‹ค. ๊ฐ€๋”์”ฉ ํ† ์ดํ”„๋กœ์ ํŠธ๋“ค์„ ๊ฐœ์ธ์ ์œผ๋กœ ํ•ด๋ณด๋ฉด์„œ ์ƒ๊ฐ๋ณด๋‹ค ๋ฐ‘๋ฐ”๋‹ฅ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š”๊ฒŒ ์‰ฝ์ง€ ์•Š๋‹ค๋Š”๊ฑธ ๋Š๊ปด์„œ, ๋น ๋ฅด๊ฒŒ ๋ฐฐ์šด๋งŒํผ ๋ณต์Šต์„ ๊ผญ ํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค. ๋ฌด์—‡๋ณด๋‹ค ๋˜ ํ”„๋กœ์ ํŠธ๊ฐ€ ์‹œ์ž‘๋˜๋ฉด ์‰ด์ƒˆ์—†์ด ๋‹ฌ๋ฆฌ๊ฒŒ๋  ๊ฒƒ ๊ฐ™์•„์„œ ์ž ๋„ ๋งŽ์ด ์ž๋‘๊ณ  ์ฒด๋ ฅ๋ณด์ถฉ๋„ ํ•ด๋‘ฌ์•ผ์ง€.. ๊ธฐ๋Œ€๋œ๋‹ค ๐Ÿ‘๐Ÿป

 

๋ฐ˜์‘ํ˜•