๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Frontend/CSS

[ CSS ] parents div์— ์˜ํ•ด unclickable ํ•˜๊ฒŒ ๋˜๋Š” children div๋ฅผ clickableํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ

by YWTechIT 2022. 11. 23.
728x90

๐Ÿ“ parents div์— ์˜ํ•ด unclickable ํ•˜๊ฒŒ ๋˜๋Š” children div๋ฅผ clickableํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ

์ œ๋ชฉ์ด ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์ง€๋งŒ background: transparent์ธ Parent Div ๋ฐ‘์— clickable ํ•  ์ˆ˜ ์žˆ๋Š” Child div๊ฐ€ ์žˆ์„ ๋•Œ ํด๋ฆญํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ž‘์„ฑํ•˜๋ ค๊ณ  ํ•œ๋‹ค.

 

๊ธฐ์กด์—๋Š” ๋ถ€๋ชจ Div๋งŒ ํด๋ฆญ ํ•  ์ˆ˜ ์žˆ์–ด ์ž์‹ Div๋Š” ํด๋ฆญํ•  ์ˆ˜ ์—†์—ˆ์ง€๋งŒ css์˜ pointer-events ์†์„ฑ์„ ์ด์šฉํ•˜์—ฌ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๊ธ€๋กœ ์ดํ•ดํ•˜๊ธฐ ํž˜๋“ค๋‹ค๋ฉด ํ•˜๋‹จ์˜ ๊ทธ๋ฆผ์„ ๋ณด์ž.(๊ทธ๋ฆผ์€ ๋ฐœ(๐Ÿฆถ๐Ÿพ)๋กœ ๊ทธ๋ ธ๋‹ค.)

 

 

๋‚ด๊ฐ€ ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•์€ ๋ถ€๋ชจ Div์— pointer-events: none์„ ์ฃผ๊ณ , clickable ํ•  target Div์— pointer-events: all์„ ์ฃผ์ž. ์ถ”๊ฐ€๋กœ pointer-events๋Š” ๋ชจ๋“  ๋ธŒ๋ผ์šฐ์ €์— ์ง€์›๋˜๋Š” ์†์„ฑ์ด๋‹ค.

728x90

ํ•˜๋‹จ CodePen์— ๋‹น์‹œ ์ƒํ™ฉ์„ ๋™์ผํ•˜๊ฒŒ ๊ตฌํ˜„ํ•˜๋ ค ํ–ˆ์œผ๋‚˜ AS-IS๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ๊ตฌํ˜„ํ•˜์ง€ ๋ชปํ•ด unclickable์— ์ž„์˜๋กœ pointer-events: none์„ ์คฌ๋‹ค. ์—ฌ๊ธฐ์— ์ดˆ์ ์„ ๋งž์ถ”๋Š” ๋Œ€์‹  clickable์— pointer-events: all์„ ์คŒ์œผ๋กœ์จ ๋ถ€๋ชจ Div์— ์˜ํ•ด ํด๋ฆญ์ด ๋ถˆ๊ฐ€๋Šฅํ•œ ์ปดํฌ๋„ŒํŠธ์—๋„ clickable ํ•  ์ˆ˜ ๊ฒƒ์— ์ดˆ์ ์„ ๋งž์ถ”๋ฉด ๋œ๋‹ค.

 

See the Pen pointer-events by an (@YWTechIT) on CodePen.

Reference

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€