๐ ๊ฐ์ง๋ง ๋ค๋ฅด๋ค?
ํ๋ฉด์ ๊ตฌ์ฑํ๋ฉด์ ๋๋๋ก ์ด๋ฒคํธ ํจ๊ณผ๋ ๊ธฐํ ๋ชฉ์ ์ผ๋ก ์์๋ฅผ ๋ณด์ด์ง ์๊ฒ ํด์ผ ํ ๋๊ฐ ์๋ค.
CSS์์๋ ์ด๋ฌํ ๊ธฐ๋ฅ์ ๋ค์ํ ๋ฐฉ์์ผ๋ก ์์ฑํ ์ ์๋๋ฐ ์ง๊ธ๋ถํฐ ์ด๋ค ๋ฐฉ์์ด ์๋์ง ์์๋ณด์!
1. display: none
- ์ปจํ ์ธ ๊ฐ ์ฌ๋ผ์ง๋ฉด์ ํด๋น ์ปจํ ์ธ ๊ฐ ์ฐจ์งํ๊ณ ์๋ ์์ญ๋ ํจ๊ป ์ฌ๋ผ์ง๋ค.
- ์ด๋ฒคํธ (ex. ํด๋ฆญ)๋ ์๋ํ์ง ์๋๋ค.
- ํ๋ฉด ์์ญ์์ ์ฌ๋ผ์ง๋ ๊ฒ ๋ฟ๋ง ์๋๋ผ ๋ณด์กฐ๊ธฐ๊ธฐ๋ ๊ฒ์์์ง์ด ์ ๊ทผํ์ง ๋ชปํ๊ฒ ๋์ด ํ ์คํธ์ธ ๊ฒฝ์ฐ ์คํฌ๋ฆฐ๋ฆฌ๋ ์ฌ์ฉ์๊ฐ ํด๋น ๋ด์ฉ์ ๋ค์ ์ ์๋ค.
- ๋ธ๋ผ์ฐ์ ๋ ๋๋ง ์ ๋ ๋๋ง ํธ๋ฆฌ์์ ์์๋ฅผ ์์ ํ ์ ๊ฑฐํ๋ค.
2. visibility: hidden
- display: none๊ณผ ๋ฌ๋ฆฌ ์ปจํ ์ธ ๋ ์ฌ๋ผ์ ธ๋ ํด๋น ์์ญ์ ๊ทธ๋๋ก ์กด์ฌํ๋ค.
- ์ด๋ฒคํธ (ex. ํด๋ฆญ)๋ ์๋ํ์ง ์๋๋ค.
- visibility: hidden ์ผ๋ก ์ฌ๋ผ์ง ์์ ๋ค์ ์๋ ์์๋ ํด๋ฆญ์ด ๊ฐ๋ฅํ๋ค.
- ํ๋ฉด ์์ญ์์ ์ฌ๋ผ์ง๋ ๊ฒ ๋ฟ๋ง ์๋๋ผ ๋ณด์กฐ๊ธฐ๊ธฐ๋ ๊ฒ์์์ง์ด ์ ๊ทผํ์ง ๋ชปํ๊ฒ ๋์ด ํ ์คํธ์ธ ๊ฒฝ์ฐ ์คํฌ๋ฆฐ๋ฆฌ๋ ์ฌ์ฉ์๊ฐ ํด๋น ๋ด์ฉ์ ๋ค์ ์ ์๋ค.
3. opacity: 0
- ์ปจํ ์ธ ๋ ์ฌ๋ผ์ ธ๋ ํด๋น ์์ญ์ ๊ทธ๋๋ก ์กด์ฌํ๋ค.
- ์ด๋ฒคํธ (ex. ํด๋ฆญ)๋ ์๋ํ๋ค.
- ์ฌ๋ผ์ง ์์ ๋ค์ ์๋ ์์๋ ํด๋ฆญ์ด ๋ถ๊ฐ๋ฅํ๋ค.
- ํ๋ฉด ์์ญ์์ ์ฌ๋ผ์ง๋ ๊ฒ ๋ฟ๋ง ์๋๋ผ ๋ณด์กฐ๊ธฐ๊ธฐ๋ ๊ฒ์์์ง์ด ์ ๊ทผํ์ง ๋ชปํ๊ฒ ๋์ด ํ ์คํธ์ธ ๊ฒฝ์ฐ ์คํฌ๋ฆฐ๋ฆฌ๋ ์ฌ์ฉ์๊ฐ ํด๋น ๋ด์ฉ์ ๋ค์ ์ ์๋ค.
4. width: 0; height: 0; (ํ ์คํธ์ ๊ฒฝ์ฐ font-size: 0; line-height: 0; ์ถ๊ฐ)
width: 0;
height: 0;
font-size: 0;
line-height: 0;
- ์์์ ํฌ๊ธฐ๋ฅผ 0์ผ๋ก ๋ง๋ค์ด ํ๋ฉด์์ ๋ณด์ด์ง ์๊ฒ ํ๋ ๋ฐฉ์.
- ์ผ๋ถ ์คํฌ๋ฆฐ๋ฆฌ๋์ ๊ฒฝ์ฐ ํด๋น ์์๋ฅผ ๋ฌด์ํด์ ์ฝ์ง ์์ ์ ์๊ธฐ ๋๋ฌธ์ ์ ๊ทผ์ฑ์ ์ข์ ๋ฐฉ๋ฒ์ ์๋๋ค.
5. clip
.hidden {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
overflow: hidden;
clip-path: polygon(0 0, 0 0, 0 0);
}
- position: absolute; : ๋ ์ด์์์ ์ํฅ์ ์ฃผ์ง ์๊ฒ nomal flow์์ ํด๋น ์์ดํ ์์ญ์ ์์ค๋ค.
- width: 1px; height: 1px; : width, height๊ฐ์ ์ต์ํ์ ํฌ๊ธฐ๋ก ์กฐ์ ํ๋ค.
- margin: -1px; : ํ๋ฉด์ ์์ ์๋์ค๊ฒ ํ๋ค.
- overflow: hidden; : overflow๋ ์ฝํ ์ธ ๋ฅผ ์จ๊ธด๋ค.
- clip-path: polygon(0 0, 0 0, 0 0); : ํด๋ฆฌํ ๋ฒ์๋ฅผ ๋ชจ๋ 0์ผ๋ก ์ง์ ํด์ ์์๋ฅผ ์จ๊ธด๋ค.
์ด ๋ฐฉ๋ฒ์ ํ ์คํธ๋ฅผ ๊ณ ๋ คํด ํ๋ฉด์์ ๋ณด์ด์ง ์๋๋ผ๋ ์คํฌ๋ฆฐ ๋ฆฌ๋๊ฐ ์ฝ์ ์ ์๋๋ก ํ๋ ๋ฐฉ๋ฒ์ด๋ค.
ํ๋ฉด์์ ์์๋ฅผ ์จ๊ธฐ๊ณ ์คํฌ๋ฆฐ ๋ฆฌ๋๊ฐ ํด๋น ์์์ ํ
์คํธ๋ฅผ ์ฝ์ ์ ์์ผ๋ฉฐ ๋ณด์กฐ๊ธฐ๊ธฐ๊ฐ ์ ๊ทผํ์ ๋ ํ๋ฉด ์คํฌ๋กค์ ์์ง์์ ๋ง์ ์ ์๋ค.
.hiddenํด๋์ค์ css๊ฐ์ ์ ์ฅํด๋๊ณ ์ ๊ทผ์ฑ์ ๊ณ ๋ คํ์ฌ ์์๋ฅผ ์จ๊ฒจ์ผ ํ ๊ฒฝ์ฐ์ ์ฌ์ฉํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค.
.hidden {
border: 0;
clip: rect(0 0 0 0);
clip-path: inset(50%);
width: 1px;
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
white-space: nowrap;
}
๋น์ทํ ์ฝ๋์ง๋ง ์ฝ๊ฐ์ ์ฐจ์ด๊ฐ ์๋ค. ์๋ ์ฝ๋๋ ์ข ๋ ๋ง์ ์์๋ฅผ ๊ณ ๋ คํ ์ฝ๋๋ก ์ง์ ํ
์คํธํด๋ณด๋ฉด์ ์ฌ์ฉํด๋ณด๊ธธ ๊ถ์ฅํ๋ค.
์ฐธ๊ณ
https://fresh-mint.tistory.com/entry/CSS3-%EC%9B%B9%EC%A0%91%EA%B7%BC%EC%84%B1%EC%9D%84-%EA%B3%A0%EB%A0%A4%ED%95%9C-blindhidden-%EC%B2%98%EB%A6%AC
https://velog.io/@ursr0706/%EC%9B%B9-%EC%A0%91%EA%B7%BC%EC%84%B1%EC%9D%84-%EA%B3%A0%EB%A0%A4%ED%95%98%EC%97%AC-%ED%85%8D%EC%8A%A4%ED%8A%B8-%EC%88%A8%EA%B8%B0%EA%B8%B0
'Programming > 11. etc' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
005_npm ci, npm i (0) | 2022.05.08 |
---|---|
004_cdn ๐ (0) | 2022.04.16 |
002_์ธํฐ๋ท ๐ (0) | 2022.04.03 |
001_๋ธ๋ผ์ฐ์ ์ ์ ์ฅ์์ ๋ํด ์์๋ณด์ ๐ (0) | 2022.03.31 |
๋๊ธ