2021-11-22 TIL

๋””์•„ยท2021๋…„ 11์›” 22์ผ
1

๋ฉ‹์‚ฌFE์Šค์ฟจ1๊ธฐ

๋ชฉ๋ก ๋ณด๊ธฐ
6/20
post-thumbnail

๐ŸฆDay17

๐Ÿ’ป ์˜ค๋Š˜ ๋ณด๊ณ  ๋“ฃ๊ณ  ๋ฐฐ์šด ๊ฒƒ

1. IR ํ…Œํฌ๋‹‰

์›น์ ‘๊ทผ์„ฑ์„ ์œ„ํ•œ ์ด๋ฏธ์ง€ ๋Œ€์ฒด ํ…์ŠคํŠธ๋ฅผ ํ™”๋ฉด์— ๋ณด์ด์ง€ ์•Š๊ฒŒ html ๊ณณ๊ณณ์— ์ˆจ๊ฒจ๋‘๋Š” ๋ฐฉ๋ฒ•

๋„ค์ด๋ฒ„์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹

.blind{
	position: absolute;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

position:absolute๋ฅผ ์ฃผ์–ด ์œ„์น˜๋ฅผ ๊ณ ์ •์‹œํ‚ค๊ณ  clip ์†์„ฑ์œผ๋กœ ์ƒํ•˜์ขŒ์šฐ ๊ฐ’์„ 0 ์œผ๋กœ ์ฃผ์–ด ์š”์†Œ ์ „์ฒด๋ฅผ ํฌ๋กญํ•ด๋ฒ„๋ฆฌ๋Š” ๋ฐฉ์‹์ด๋‹ค

clip

rect() ํ•จ์ˆ˜๋กœ ์„ค์ •ํ•œ ๊ฐ’๋งŒํผ ์ด๋ฏธ์ง€๋ฅผ ํฌ๋กญํ•ด์ค€๋‹ค position: absolute ์„ค์ •ํ•ด์•ผ ์†์„ฑ์ด ์ ์šฉ๋œ๋‹ค
ํ•˜์ง€๋งŒclip์€ ์˜ค๋ž˜๋œ ๊ธฐ์ˆ ์ด๋ผ ๋ธŒ๋ผ์šฐ์ € ํ˜ธํ™˜ ๋ฌธ์ œ๋กœ clip-path ์‚ฌ์šฉ์ด ๊ถŒ์žฅ๋œ๋‹ค

2. CSS Sprite ๊ธฐ๋ฒ•

์›นํŽ˜์ด์ง€์—์„œ ํ•„์ˆ˜๋กœ ํ˜น์€ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์ด๋ฏธ์ง€๋“ค์„ ๋ชจ์•„ ํ•˜๋‚˜์˜ ์ด๋ฏธ์ง€ํŒŒ์ผ๋กœ ๋งŒ๋“ฆ์œผ๋กœ์จ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ด๋ฏธ์ง€๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๋ถˆ๋Ÿฌ์™€์•ผ ํ•˜๋Š” ๋ถ€๋‹ด์„ ์ค„์—ฌ์ฃผ๋Š” ๋ฐฉ๋ฒ•

๋‹ค์Œ ์›น์‚ฌ์ดํŠธ์˜ ์˜ˆ์‹œ
'๋‹ค์Œ'์˜ ๊ฒฝ์šฐ ๋ฉ”์ธ ํŽ˜์ด์ง€์˜ ์นดํ…Œ๊ณ ๋ฆฌ๋ฉ”๋‰ด๋“ค์ด ์ „๋ถ€ ์ด๋ฏธ์ง€๋กœ ๋˜์–ด์žˆ๋‹ค ์ผ๋ฐ˜์ ์œผ๋กœ ํฐํŠธ ์šฉ๋Ÿ‰์ด ๋„ˆ๋ฌด ํฌ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ํฐํŠธ๋ฅผ ์ ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” ๋ถ€๋ถ„์ด ๋งŽ์ง€ ์•Š์€ ๊ฒฝ์šฐ ์ด๋ ‡๊ฒŒ ์ด๋ฏธ์ง€๋กœ ๋งŒ๋“  ํ›„ background ์†์„ฑ์„ ์ด์šฉํ•˜์—ฌ ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ ํ‘œ์‹œํ•œ๋‹ค

3. ๋ ˆํ‹ฐ๋‚˜ ๋Œ€์‘ ์ด๋ฏธ์ง€ ๋„ฃ๊ธฐ

1) ํ”ผ๊ทธ๋งˆ์—์„œ ์ด๋ฏธ์ง€์˜ 2๋ฐฐ์ˆ˜ ์ด๋ฏธ์ง€๋ฅผ ์ถ”์ถœ
2) css sprites generator์—์„œ ์Šคํ”„๋ผ์ดํŠธ ์ด๋ฏธ์ง€ ์ƒ์„ฑ
3) background-size๋ฅผ ์‹ค ์Šคํ”„๋ผ์ดํŠธ ์ด๋ฏธ์ง€์˜ ํฌ๊ธฐ๋ณด๋‹ค 1/2 ํฌ๊ธฐ์˜ ํ”ฝ์…€๋กœ ์ง€์ •
4) background-position๋„ 1/2 ํ”ฝ์…€๋กœ ์„ค์ •
5) -webkit-device-pixel-ratio ์†์„ฑ์œผ๋กœ ๋ ˆํ‹ฐ๋‚˜ ๋””์Šคํ”Œ๋ ˆ์ด์—์„œ 2๋ฐฐ์ˆ˜ ์ด๋ฏธ์ง€ ํ‘œ์‹œ๋˜๋„๋ก ๋ฏธ๋””์–ด์ฟผ๋ฆฌ ์„ค์ •



๐Ÿ’ญ ์˜ค๋Š˜ ํ•˜๋ฃจ ๋Š๋‚€ ์ 

์˜ค๋Š˜์€ ์ˆ˜์—… ๋๋‚˜๊ณ  ์ €๋…์— ์Šคํ”„๋ฆฐํŠธ ํšŒ๊ณ  ์‹œ๊ฐ„์ด ์žˆ์—ˆ์–ด์„œ ๋ณต์Šต์„ ์ œ๋Œ€๋กœ ๋ชปํ–ˆ๋‹ค
๋ถ€ํŠธ์ŠคํŠธ๋žฉ ์ด๊ฒƒ์ €๊ฒƒ ๋ฐฐ์› ๋Š”๋ฐ ๋ญ ์ œ๋Œ€๋กœ ์จ๋จน์–ด๋ณธ๊ฒŒ ์—†๋„ค...๐Ÿฅฒ
CSS๋Š” ์ •๋ง ์–ด๋ ค์šด ๊ฒƒ ๊ฐ™๋‹ค
IR๊ธฐ๋ฒ•์—์„œ clip ์†์„ฑ ์‚ฌ์šฉํ•ด๋ณด๋Š”๋ฐ ์™œ 0 0 0 0์„ ์ฃผ๋ฉด ์ด๋ฏธ์ง€๊ฐ€ ์‚ฌ๋ผ์ง€๋Š”์ง€ ์•„์ง ์™„์ „ํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ–ˆ๋‹ค ์ž˜ ์“ฐ์ง€ ์•Š๋Š” ์†์„ฑ์ด๋ผ์„œ ์•ž์œผ๋กœ ์ง์ ‘ ์‚ฌ์šฉํ•  ์ผ์€ ๋งŽ์ง€ ์•Š๊ฒ ์ง€๋งŒ ๊ทธ๋ž˜๋„ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ์ดํ•ด๋Š” ํ•ด์•ผํ•˜๋‹ˆ ๋‹ค์‹œ ํ•œ๋ฒˆ ์ฐพ์•„๋ด์•ผ๊ฒ ๋‹ค





์ฐธ๊ณ ์ž๋ฃŒ

์Šคํฌ๋ฆฐ๋ฆฌ๋” ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ IR(Image Replacement)๊ธฐ๋ฒ•๊ณผ ์ถ”๊ฐ€ ์„ค๋ช… ์ œ๊ณตํ•˜๊ธฐ
https://nuli.navercorp.com/community/article/1132804
์ด๋ฏธ์ง€ ์ตœ์ ํ™” ์‚ฌ์ดํŠธ
https://kraken.io/
-webkit-device-pixel-ratio
https://developer.mozilla.org/en-US/docs/Web/CSS/@media/-webkit-device-pixel-ratio

profile
์–ผ๋ ˆ๋ฒŒ๋ ˆ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์ž

3๊ฐœ์˜ ๋Œ“๊ธ€

comment-user-thumbnail
2021๋…„ 11์›” 23์ผ

์ง€์œค๋‹˜ ํฌ์ŠคํŒ… ๋ณด๊ณ  ์™„์ „ ์ดํ•ดํ•˜์…จ๋‹ค๊ณ  ํ•˜์‹  ๋ถ€๋ถ„์ด clip์ผ๊นŒ์š”? ์ง€๊ธˆ์€ ์™„์ „ํžˆ ์ดํ•ดํ•˜์…จ๋Š”์ง€ ๊ถ๊ธˆํ•ด์š” ( โ€ขฬ€ ฯ‰ โ€ขฬ )โœง ์˜ค๋Š˜๋„ ๊น”๋”ํ•œ ์ •๋ฆฌ!! ๋Œ€๋‹จํ•˜์‹ญ๋‹ˆ๋‹น๐Ÿ‘

1๊ฐœ์˜ ๋‹ต๊ธ€