Material-design-lite: ํˆดํŒ์˜ ์ž˜๋ชป๋œ ์œ„์น˜

์— ๋งŒ๋“  2015๋…„ 07์›” 08์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: google/material-design-lite

๋” ๋งŽ์€ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์ง€๋งŒ ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ํ˜„์žฌ ๊ฐœ๋ฐœ ์ค‘์ธ ์•ฑ์—์„œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ์Šคํฌ๋กค ๋ง‰๋Œ€๊ฐ€ ์žˆ๊ณ  ํ•ด๋‹น ์š”์†Œ์— CSS๋ฅผ ํ†ตํ•ด ๋ฒˆ์—ญ์ด ์ ์šฉ๋œ ๊ฒฝ์šฐ์—๋งŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์—์„œ ์˜ˆ๋ฅผ ์ฐธ์กฐํ•˜์‹ญ์‹œ์˜ค (๋นจ๊ฐ„์ƒ‰ ์ƒ์ž ์œ„๋กœ ๋งˆ์šฐ์Šค๋ฅผ ์ด๋™)

์ด์™€ ๊ฐ™์€ ๊ฒƒ์ด ์ด๋ก ์ ์œผ๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค (์ œ ์ƒ๊ฐ์—๋Š”)

let rect = el.getBoundingClientRect();
let left = rect.left + window.pageXOffset;
let top = rect.top + window.pageYOffset;

// now we have a more accurate representation of the current top / left coords
P1 Tooltip

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

ํ‹ธ!

๊ด€์ฐฐ๋œ ๋™์ž‘์€ CSS ์‚ฌ์–‘ ์— ๋”ฐ๋ผ ์ •ํ™•ํ•ฉ๋‹ˆ๋‹ค.

๋ ˆ์ด์•„์›ƒ์ด CSS ์ƒ์ž ๋ชจ๋ธ์— ์˜ํ•ด ์ œ์–ด๋˜๋Š” ์š”์†Œ์˜ ๊ฒฝ์šฐ ๋ณ€ํ™˜์— ๋Œ€ํ•ด none ์ด์™ธ์˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด ์Šคํƒ ์ปจํ…์ŠคํŠธ์™€ ํฌํ•จ ๋ธ”๋ก์ด ๋ชจ๋‘ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ์ฒด๋Š” ์œ„์น˜๊ฐ€ ๊ณ ์ •๋œ ํ•˜์œ„ ํ•ญ๋ชฉ์„ ํฌํ•จํ•˜๋Š” ๋ธ”๋ก ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

ํˆดํŒ์€ position: fixed ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐ์น˜๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ณ€ํ™˜์„ ์ ์šฉํ•˜์—ฌ NOP์ธ ๊ฒฝ์šฐ์—๋„ ๊ณ ์ • ์œ„์น˜ ์ง€์ •์„ ์œ„ํ•ด ์›์ ์„ ์ด๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

์‰ฌ์šด ์ˆ˜์ • ์€ ํˆดํŒ์„ ๋‹ค๋ฅธ ์ปจํ…Œ์ด๋„ˆ(๋˜๋Š” body )๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

ํฅ๋ฏธ๋กœ์šด ๋ฒ„๊ทธ. ๋ณ€ํ™˜์œผ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์ง€๋งŒ _์ด์œ _๋ฅผ ์ดํ•ดํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ตœ๊ทผ ์›น์—์„œ ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ถ”์ง„ํ•˜๋ฉด์„œ ๊ฝค ์ผ๋ฐ˜์ ์ธ ์ผ์ด ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ด๊ฒฐ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ‹ธ!

๊ด€์ฐฐ๋œ ๋™์ž‘์€ CSS ์‚ฌ์–‘ ์— ๋”ฐ๋ผ ์ •ํ™•ํ•ฉ๋‹ˆ๋‹ค.

๋ ˆ์ด์•„์›ƒ์ด CSS ์ƒ์ž ๋ชจ๋ธ์— ์˜ํ•ด ์ œ์–ด๋˜๋Š” ์š”์†Œ์˜ ๊ฒฝ์šฐ ๋ณ€ํ™˜์— ๋Œ€ํ•ด none ์ด์™ธ์˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด ์Šคํƒ ์ปจํ…์ŠคํŠธ์™€ ํฌํ•จ ๋ธ”๋ก์ด ๋ชจ๋‘ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ๊ฐœ์ฒด๋Š” ์œ„์น˜๊ฐ€ ๊ณ ์ •๋œ ํ•˜์œ„ ํ•ญ๋ชฉ์„ ํฌํ•จํ•˜๋Š” ๋ธ”๋ก ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

ํˆดํŒ์€ position: fixed ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐ์น˜๋ฉ๋‹ˆ๋‹ค. ์ฆ‰, ๋ณ€ํ™˜์„ ์ ์šฉํ•˜์—ฌ NOP์ธ ๊ฒฝ์šฐ์—๋„ ๊ณ ์ • ์œ„์น˜ ์ง€์ •์„ ์œ„ํ•ด ์›์ ์„ ์ด๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

์‰ฌ์šด ์ˆ˜์ • ์€ ํˆดํŒ์„ ๋‹ค๋ฅธ ์ปจํ…Œ์ด๋„ˆ(๋˜๋Š” body )๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ , ๋งค์šฐ ํฅ๋ฏธ๋กญ์Šต๋‹ˆ๋‹ค. ์ ์–ด๋„ ์šฐ๋ฆฌ๋Š” ์ง€๊ธˆ ์•Œ๊ณ  ์žˆ๊ณ  ๋งŒ์•ฝ ๊ทธ๊ฒƒ์ด ๋‹ค์‹œ ๋ฐœ์ƒํ•œ๋‹ค๋ฉด ์—ฌ๊ธฐ ์‚ฌ๋žŒ๋“ค์„ ์ง€์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. @surma ์—ฐ๊ตฌ๋ฅผ ํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰