HTML & CSS
Flexbox -> flex-direction, flex-wrap, flex-flow
kelly09
2024. 5. 6. 16:18
๐ฐ Flexbox๋?
- 1์ฐจ์ ์ฝํ ์ธ ์ฉ์ผ๋ก ์ค๊ณ๋ ๋ ์ด์์ ๋ชจ๋ธ
- ์์ดํ ๊ฐ ๊ณต๊ฐ ๋ฐฐ๋ถ, ๊ฐ๋ ฅํ ์ ๋ ฌ ๊ธฐ๋ฅ ์ ๊ณตํ๊ธฐ ์ํด ์ค๊ณ๋จ
- ์ 1์ฐจ์์ด๋ผ๊ณ ํ๋๊ฐ? -> ํ ๋ฒ์ ํ๋์ ์ฐจ์(ํ or ์ด)๋ง ๋ค๋ฃธ. <-> Grid Layout
- flex container๋ก flex item๋ค์ ๋ฌถ์ด์ผ ํจ
๐ฐ flex ๋ฐฉํฅ ์ง์ ํ๋ flex-direction ์์ฑ
- flex-direction ์์ฑ์ผ๋ก ์ค์ ํ ์ถ = ์ฃผ ์ถ(main axis)
- ์ฃผ ์ถ์ ์์ง์ธ ์ถ = ๊ต์ฐจ ์ถ(cross axis)
- row => ์ฃผ ์ถ์ ํ(๊ฐ๋ก), ๊ต์ฐจ ์ถ์ ์ด(์ธ๋ก) - ๊ธฐ๋ณธ๊ฐ
- row-reverse => flex-item์ ์ฃผ์ถ ๋์ ์์ ์์์ ์ผ๋ก(์ค๋ฅธ์ชฝ -> ์ผ์ชฝ) ๋ฐฐ์น
- column => ์ฃผ ์ถ์ ์ด(์ธ๋ก), ๊ต์ฐจ ์ถ์ ํ(๊ฐ๋ก)
- column-reverse => flex-item์ ์ฃผ์ถ ๋์ ์์ ์์์ ์ผ๋ก(์๋์ชฝ -> ์์ชฝ) ๋ฐฐ์น
๐ฐ ์ ๊ทผ์ฑ ์ธก๋ฉด์์์ reverse
- ์๊ฐ์ ํ์๋ฅผ ์ฌ์ ๋ ฌํ๋ ์์ฑ ์ฌ์ฉ ์ ์ ๊ทผ์ฑ์ ๋ถ์ ์ ์ธ ์ํฅ ์ค ์ ์์ด์ ์ฃผ์
- row-reverse์ column-reverse => ์ฌ์ ๋ ฌ์ด ์๊ฐ์ ์์์ ๋ํด์๋ง ๋ฐ์ ๐๐ป , ๋ ผ๋ฆฌ์ ์์ ์ ๋ ฌ X
๐ฐ ํ ์ค/ ์ฌ๋ฌ ์ค ๋ฐฐ์นํ๋ flex-wrap ์์ฑ
- no-wrap - ํญ๋ชฉ์ ํ ์ค์ ํ์. ๊ธฐ๋ณธ๊ฐ
- wrap - ํญ๋ชฉ์ ์ฌ๋ฌ ์ค์ ํ์
- wrap-reverse - ํญ๋ชฉ์ ์ฌ๋ฌ ์ค์ ํ์, ๊ธฐ์กด ๋ฐฉํฅ๊ณผ ๋ฐ๋๋ก ๋ฐฐ์น
- wrap-reverse๋ก ์ง์ ์ ์ฃผ์ถ: ์์์ -> ๋์ (์ผ์ชฝ -> ์ค๋ฅธ์ชฝ), ๊ต์ฐจ์ถ: ๋์ -> ์์์ (์๋ -> ์)
๐ฐ flex ๋ฐฉํฅ๊ณผ ์ฌ๋ฌ ์ค ๋ฐฐ์น ํ๊บผ๋ฒ์ ์ง์ ํ๋ flex-flow ์์ฑ
- flex-flow: <flex ๋ฐฉํฅ> <flex ์ค ๋ฐฐ์น>
flex-flow: row; /* ์ผ -> ์ค๋ฅธ, ํ ์ค์ ํ์ */
flex-flow: column wrap; /* ์ -> ์๋, ์ฌ๋ฌ ์ค์ ํ์ */
์ฐธ๊ณ : https://developer.mozilla.org/ko/docs/Web/CSS/CSS_flexible_box_layout/Basic_concepts_of_flexbox,