<Do it! HTML5+CSS3>์ ๊ธฐ๋ณธ์ผ๋ก ๋ฐฐ์ด ๋ด์ฉ์ ๋๋ค.
๋ชฉ์ฐจ
- 1. CSS Positioning
1) ํฌ์ง์ ๋์ ์ข ๋ฅ
1) ํฌ์ง์ ๋ ๋น๊ต - 2. ํฌ์ง์
๋ ๊ด๋ จ ์ฃผ์ ์์ฑ๋ค
1) ๋ฐ์ค ๋๋น ๊ธฐ์ค ์ ํ๊ธฐ - box-sizing
2) ์ผ์ชฝ์ด๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ฐฐ์น - float
3) float ์์ฑ ํด์ - clear
4) ์์๋ฅผ ๋ณด์ด๊ฒ/๋ณด์ด์ง ์๊ฒ ์ง์ - visibility
5) ์์ ์๋ ์์ ์ ํ๊ธฐ - z-index
1. CSS Positioning
CSS ํฌ์ง์ ๋์ด๋, CSS๋ฅผ ์ด์ฉํด์ HTML ์์๋ค์ ์์น๋ฅผ ์ ์ดํ๋ ๋ฐฉ๋ฒ์ด๋ค.
์์์ CSS ์์ฑ์ผ๋ก position์ ์ง์ ํ๋ฉด ์ฌ๋ฌ๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ์์น๋ฅผ ์ง์ ํ ์ ์๋ค.
1) ํฌ์ง์ ๋์ ์ข ๋ฅ
- ์๋์์น(position: relative)
- ์์ ์ ์์น๋ฅผ ๊ธฐ์ค์ผ๋ก ํ ์๋์์น ๊ฐ์ ์ง์ ํ๋ค.
- ์์ ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ์ ๋ฐ๋ผ์ ๋ถ๋ชจ ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ๊ฐ ์๋์ผ๋ก ๋ณ๊ฒฝ๋์ง๋ง, ์๋ฆฌ๋จผํธ์ ์์น์ ๋ฐ๋ผ์๋ ๋ณ๊ฒฝ๋์ง ์๋๋ค.
- ์ ๋์์น(position: absolute)
- ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์์น๊ฐ ์ ํด์ง๊ธฐ ๋๋ฌธ์ ๋ถ๋ชจ ์๋ฆฌ๋จผํธ์ ์์น์๋ ๋ฌด๊ดํ๋ค.
- ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ๊ฐ ๋ถ๋ชจ ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ์ ๋ฐ์๋์ง ์๋๋ค.
- ๊ณ ์ ์์น(position: fixed)
- ๋ฌธ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์์น๊ฐ ์ ํด์ง๊ธฐ ๋๋ฌธ์ ๋ถ๋ชจ ์๋ฆฌ๋จผํธ์ ์์น์๋ ๋ฌด๊ดํ๋ค.
- ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ๊ฐ ๋ถ๋ชจ ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ์ ๋ฐ์๋์ง ์๋๋ค.
- ์คํฌ๋กค์ ์ํฅ์ ๋ฐ์ง ์๋๋ค.
- ์ ์ ์์น(position: static)
- ์์ ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ์ ๋ฐ๋ผ์ ๋ถ๋ชจ ์๋ฆฌ๋จผํธ์ ํฌ๊ธฐ๊ฐ ์๋์ผ๋ก ๋ณ๊ฒฝ๋๋ค.
- position ์์ฑ์ ๊ฐ์ ์ง์ ํ์ง ์์ผ๋ฉด ๊ธฐ๋ณธ์ ์ผ๋ก static์ ๊ฐ์ด ์ฃผ์ด์ง๋ค.
- left, top, right, bottom๊ณผ ๊ฐ์ offset์ด ๋ฌด์๋๋ค.
2) ํฌ์ง์ ๋ ๋น๊ต
๊ธฐ์ค์์น | ๋ถ๋ชจ์ ํฌ๊ธฐ | ์์ ์ ํฌ๊ธฐ | offset ์ฌ์ฉ(left,right. top,bottom) |
์คํฌ๋กค | |
static |
์๊ธฐ์์น |
์์์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ณ๊ฒฝ |
width:100%๋ก ๋ถ๋ชจ์ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ฆ |
๋ถ๊ฐ |
๋ฐ๋ผ๊ฐ |
relative |
์๊ธฐ์์น |
์์์ ํฌ๊ธฐ์ ๋ฐ๋ผ ๋ณ๊ฒฝ๋์ง๋ง ์์น๋ฅผ ๋ณ๊ฒฝํจ์ ๋ฐ๋ผ ๋ถ๋ชจ์ ํฌ๊ธฐ๊ฐ ๋ณ๊ฒฝ๋์ง๋ ์์ |
width:100%๋ก ๋ถ๋ชจ์ ํฌ๊ธฐ๋ฅผ ๋ฐ๋ฆ |
๊ฐ๋ฅ |
๋ฐ๋ผ๊ฐ |
absolute |
๋ฌธ์(html), ์์ ์์น๋ static ๊ธฐ์ค์ผ๋ก ์๋์ ์์น์ ๋ง์ถฐ์ ธ ์์. |
๋ถ๋ชจ์ ํฌ๊ธฐ์ ์ํฅ์ ๋ผ์น์ง ์์ |
ํฌํจํ๊ณ ์๋ ์ปจํ ํธ์ ํฌ๊ธฐ ๋งํผ ๋์ด๋จ |
๊ฐ๋ฅ | ๋ฐ๋ผ๊ฐ |
fixed | ์ ๋์์น์ ๋์ผ | ์ ๋์์น์ ๋์ผ | ์ ๋์์น์ ๋์ผ | ๊ฐ๋ฅ | ๊ณ ์ |
2. ํฌ์ง์ ๋ ๊ด๋ จ ์ฃผ์ ์์ฑ๋ค
1) ๋ฐ์ค ๋๋น ๊ธฐ์ค ์ ํ๊ธฐ - box-sizing
- width์์ฑ = ์ฝํ ์ธ ์์ญ์ ๋๋น
- box-sizing = width + ์ข์ฐํจ๋ฉ + ์ข์ฐํ ๋๋ฆฌ
์ ํ์ { box-sizing: ์์ฑ ๊ฐ }
์์ฑ ๊ฐ | ์ค๋ช |
content-box (๊ธฐ๋ณธ ๊ฐ) | width ์์ฑ ๊ฐ์ ์ฝํ ์ธ ์์ญ ๋๋น ๊ฐ์ผ๋ก ์ฌ์ฉํ๋ค. |
border-box | width ์์ฑ ๊ฐ์ ์ฝํ ์ธ ์์ญ์ ํ ๋๋ฆฌ๊น์ง ํฌํจํ ๋ฐ์ค ๋ชจ๋ธ ์ ์ฒด ๋๋น ๊ฐ์ผ๋ก ์ฌ์ฉํ๋ค. |
2) ์ผ์ชฝ์ด๋ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ฐฐ์น - float
์๋ฅผ ๋ค์ด ์ด๋ฏธ์ง๋ฅผ ์ผ์ชฝ์ ๋ฐฐ์นํ ํ ์ค๋ฅธ์ชฝ์ ํ ์คํธ๋ฅผ ์ค๊ฒ ํ๋ ค๋ฉด ์ด๋ฏธ์ง ์์์ float์์ฑ์ ์ฌ์ฉํ์ฌ ์ด๋ฏธ์ง๋ฅผ ์ผ์ชฝ์ ๋ ์๊ฒ ํ ์ ์๋ค.
์ ํ์ { float: left | right | none }
3) float ์์ฑ ํด์ - clear
float์์ฑ์ ์ด์ฉํด ์น ํ์ด์ง ์์๋ฅผ ๋ฐฐ์นํ๊ฒ๋๋ฉด ๊ทธ ๋ค์์ ๋ฃ๋ ๋ค๋ฅธ ์์๋ค์๋ ๋๊ฐ์ ์์ฑ์ด ์ ๋ฌ๋๋ค. ๋ฐ๋ผ์ float์์ฑ์ ๋ ์ด์ ์ฌ์ฉํ์ง ์์ ๋๋ clear์์ฑ์ ์ด์ฉํ๋ฉด ๋๋ค.
์ ํ์ { clear: none | left | right | both }
4) ์์๋ฅผ ๋ณด์ด๊ฒ/๋ณด์ด์ง ์๊ฒ ์ง์ - visibility
visibility์์ฑ์ ํน์ ์์๋ฅผ ํ๋ฉด์ ๋ณด์ด๊ฒ ํ๊ฑฐ๋ ๋ณด์ด์ง ์๊ฒ ๋๋ ๊ฒน์น๊ฒ ์ค์ ํ๋ ์์ฑ์ด๋ค.
์ ํ์ { visibility: ์์ฑ ๊ฐ }
์์ฑ ๊ฐ | ์ค๋ช |
visible (๊ธฐ๋ณธ ๊ฐ) | ํ๋ฉด์ ์์๋ฅผ ํ์ํ๋ค. |
hidden | ํ๋ฉด์์ ์์๋ฅผ ๊ฐ์ถ๋ค. ํ์ง๋ง ํฌ๊ธฐ๋ ๊ทธ๋๋ก ์ ์งํ๋ค. |
collapse | - ํ์ ํ, ์ด, ํ ๊ทธ๋ฃน, ์ด ๊ทธ๋ฃน ๋ฑ์์ ์ง์ ํ๋ฉด ์๋ก ๊ฒน์น๋๋ก ์กฐ์ ํ๋ค. - ๊ทธ ์ธ์ ์์ญ์์ ์ฌ์ฉํ๋ฉด hidden๊ณผ ๊ฐ๋ค. |
5) ์์ ์๋ ์์ ์ ํ๊ธฐ - z-index
- z-index์์ฑ์ ์์ ์์ ์์๋ฅผ ์์ ๋ ์๋ ์์๋ฅผ ์ง์ ํ๋ค.
- z-index๊ฐ์ด ์์์๋ก ์๋์ ์์ด๊ณ , ๊ฐ์ด ํด์๋ก ์์ ์์ธ๋ค.
- z-index๊ฐ์ ๋ช ์ํ์ง ์์ผ๋ฉด, ์น ๋ฌธ์์ ๋งจ ๋จผ์ ์ฝ์ ํ๋ ์์๊ฐ ๊ฐ 1์ ๊ฐ๊ณ ๊ทธ ํ ์ฝ์ ํ๋ ์์๋ค์ ๊ฐ์ ์ ์ ์ปค์ง๋ค.
์ ํ์ { z-index: ์์ฑ ๊ฐ }
'๐ปWEB FrontEnd > CSS3' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
ํ ์คํ์ผ (0) | 2020.08.11 |
---|---|
๋ค๋จ ๊ตฌ์ฑํ๊ธฐ (0) | 2020.07.13 |
์ฌ๋ฐฑ(๋ง์ง, ํจ๋ฉ) ๊ด๋ จ ์์ฑ๋ค (0) | 2020.07.12 |
ํ ๋๋ฆฌ ๊ด๋ จ ์์ฑ๋ค (0) | 2020.07.12 |
CSS ๋ฐ์ค ๋ชจ๋ธ, ์ฝํ ์ธ ๊ด๋ จ ์์ฑ๋ค (0) | 2020.07.10 |