2025. 7. 31. 16:01ใStyle/CSS

๋ชฉ์ฐจ
1. Flexbox๋?
2. Flex Container
3. Flex Item
1. Flexbox๋?
CSS Flexbox๋ ๋ ์ด์์์ ํจ์จ์ ์ผ๋ก ๋ฐฐ์นํ๊ธฐ ์ํ ๋ ์ด์์ ๋ชจ๋ธ์ด๋ค.
์ฃผ๋ก ํ/์ด ๋จ์๋ก ์์ดํ ์ ์ ๋ ฌํ ๋ ์ฌ์ฉํ๋ค.
โญ ํต์ฌ ๊ฐ๋
| ์ฉ์ด | ์ค๋ช |
| Flex Container | Flexbox ๋ ์ด์์์ ์ ์ฉํ๋ ๋ถ๋ชจ ์์ (display: flex) |
| Flex Item | Flex Container์ ์์ ์์๋ค |
| Main Axis | ์์ดํ ์ด ๋ฐฐ์น๋๋ ์ฃผ ์ถ (๊ธฐ๋ณธ๊ฐ : ๊ฐ๋ก) |
| Cross Axis | ์ฃผ ์ถ์ ์์ง์ธ ์ถ (๊ธฐ๋ณธ๊ฐ : ์ธ๋ก) |
| Direction | flex-direction์ ๋ฐ๋ผ ์ถ์ ๋ฐฉํฅ์ ๊ฒฐ์ |
โญ Flex Container ์์ฑ
์ ์ฒด์ ์ธ ์ ๋ ฌ๊ณผ ํ๋ฆ์ flex container์ ์ ์ํ๋ค.
| ์์ฑ | ๊ฐ ์์ | ์ค๋ช |
| *display | flex, inline-flex | Flex ๋ ์ด์์์ ํ์ฑํ |
| *flex-direction | row(default), row-reverse, column, column-reverse |
์ฃผ ์ถ์ ๋ฐฉํฅ ์ค์ |
| flex-wrap | nowrap(default), wrap, wrap-reverse |
์ค๋ฐ๊ฟ ์ฌ๋ถ ๊ฒฐ์ |
| flex-flow | row wrap | flex-direction + flex-wrap ๋จ์ถ ์์ฑ |
| justify-content | flex-start, center, space-between, space-around, space-evenly |
์ฃผ ์ถ ์ ๋ ฌ ๋ฐฉ์ |
| align-items | stretch, flex-start, center, baseline, flex-end | ๊ต์ฐจ ์ถ ์ ๋ ฌ ๋ฐฉ์ |
| align-content | stretch, center, space-between | ์ฌ๋ฌ ์ค์ผ ๋ ๊ต์ฐจ ์ถ ์ ๋ ฌ (wrap์ผ ๋ ์ฌ์ฉ) |
โญ Flex Item ์์ฑ
์์ดํ ์ ํฌ๊ธฐ๋ ์์์ ๊ด๋ จ๋ ์์ฑ์ flex item์ ์ ์ํ๋ค.
| ์์ฑ | ๊ฐ ์์ | ์ค๋ช |
| order | ์ซ์ (e.g. 1, -1) | ์์ดํ ์ ๋ ฌ ์์ ๋ณ๊ฒฝ |
| flex-grow | 0 ์ด์ ์ ์ | ๋จ๋ ๊ณต๊ฐ ๋น์จ๋ก ํ์ฅ |
| flex-shrink | 0 ์ด์ ์ ์ | ๊ณต๊ฐ ๋ถ์กฑ ์ ์ค์ด๋๋ ๋น์จ |
| flex-basis | auto, 100px | ์์ดํ ์ ๊ธฐ๋ณธ ํฌ๊ธฐ ์ค์ |
| flex | 1, 0 1 auto | ์ 3๊ฐ์ ์์ฑ์ ๋จ์ถํ์ฌ ์ค์ |
| align-self | auto, flex-start, center | ๊ฐ๋ณ ์์ดํ ์ ๊ต์ฐจ ์ถ ์ ๋ ฌ |
2. Flex Container
Flex Container, ์ฆ ๋ถ๋ชจ ์์์์ ์ฌ์ฉํ๋ ์์ฑ๊ณผ ์์ฑ๊ฐ๋ค์ ์์๋ณด์.
1. display ์์ฑ
ํด๋น ๋ถ๋ชจ ์์๋ฅผ flex container๋ก ์ง์ ํ๋ ์์ฑ์ด๋ค.
์์ฑ๊ฐ์ผ๋ก flex, inline-flex๋ฅผ ์์ฑํ๋ค.

2. flex-direction
์ฃผ ์ถ์ ๋ฐฉํฅ์ ์ง์ ํ๋ค.
์์ฑ๊ฐ์ผ๋ก row(default), column, row-reverse, column-reverse๋ฅผ ์์ฑํ๋ค.
row, row-reverse

column, column-reverse

3. flex-wrap
์ค๋ฐ๊ฟ ์ฌ๋ถ๋ฅผ ์ง์ ํ๋ค.
์์ฑ๊ฐ์ผ๋ก nowrap(default), wrap, wrap-reverse๋ฅผ ์์ฑํ๋ค.

4. justify-content
์ฃผ ์ถ (๊ธฐ๋ณธ ๊ฐ๋ก ๋ฐฉํฅ)์ ์ ๋ ฌ ๋ฐฉ์์ ์ ํ๋ค.
flex-start, center, flex-end, space-between, space-around, space-evenly ๋ฑ์ ์์ฑ๊ฐ์ ์์ฑํ๋ค.


5. align-items
๊ต์ฐจ์ถ ์ ๋ ฌ๋ฐฉ์์ ์ง์ ํ๋ ์์ฑ์ด๋ค.

5. align-items
์์ ์์๊ฐ ์ฌ๋ฌ ์ค์ผ ๋ align ๋ฐฉ์์ ์ ํ๋ค.


2. Flex Item
flex box์ item์๊ฒ ์ค ์ ์๋ ์์ฑ๋ค์ ์ฌ์ฉํด๋ดค๋ค.


- order : ๋ง์ด๋์ค(-)๊ฐ์ผ๋ก ์์ฑ๊ฐ์ ์ง์ ํ์ฌ ์์๋ฅผ ๊ฐ์ฅ ์์ผ๋ก
- flex-grow : ๋จ๋ ๊ณต๊ฐ์ ๋ ๋ง์ด ์ฐจ์งํ๋๋ก ํจ
0์ผ ๊ฒฝ์ฐ ์ ๋ ํ์ฅํ์ง ์์
1์ด์์ผ ๊ฒฝ์ฐ ๋จ๋ ๊ณต๊ฐ์ ๋น๋ก์ ์ผ๋ก ์ฐจ์ง - flex-shrink : ๊ณต๊ฐ์ด ๋ถ์กฑํ ๊ฒฝ์ฐ ๋ ๋จผ์ ์ค์ด๋ฆ
0์ด๋ฉด ์ ๋ ์ค์ด๋ค์ง ์์
1 ์ด์์ด๋ฉด ๋น๋ก์ ์ผ๋ก ์ค์ด๋ฆ - flex-basis : ๊ธฐ๋ณธ ๋๋น ์ง์ (width, height ๋ณด๋ค ์ฐ์ ์ ๋จ)
- align-self : ๊ฐ๋ณ flex item์ ๋ํด ๊ต์ฐจ์ถ์ ์ ๋ ฌ์ ์ง์ ํ๋ ์์ฑ์ผ๋ก, align-items ๊ฐ์ ๋ฌด์ํ๊ณ ํด๋น ์์ดํ ๋ง ๋ฐ๋ก ์ ๋ ฌ
์ฐธ๊ณ
codeit
'Style > CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| CSS : Grid Layout (2) | 2025.07.31 |
|---|---|
| CSS : Position ์์ฑ (1) | 2025.07.30 |
| CSS : ์บ์ค์ผ์ด๋ (Cascade) : ์คํ์ผ ์ ์ฉ ์ฐ์ ์์ (3) | 2025.07.29 |
| CSS : CSS ์ ํ์ (CSS Selector) (2) | 2025.07.29 |
| CSS : display์ float (0) | 2025.07.28 |
GitHub