ํด๋น ๊ธฐ์ ์ด ๋ฌด์์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅํ๋์ง ์ดํดํ๋ฉด ์ข๋ค.
FLEXBOX FROGGY ๋ก FLEXBOX๋ฅผ ์ฐ์ตํด๋ณด์
flex-shrink
container์ ์๋ elem๋ค์ด ๊ฐ์ display: flex; ์ผ๋ default๋ก flex-shrink: 1;์ด ๋ถ์ฌ๋๋ค. ์ด ๋ ์ฐฝ์ ํฌ๊ธฐ๋ฅผ ์๊ฒ ํ๋ฉด elem์ width๋ ์ค์ ํ ๊ฐ์ด ์๋๋ผ๋ ์ผ์ ๋น์จ๋ก ์ฐ๊ทธ๋ฌ์ง๊ฒ ๋๋๋ฐ ์ด ๋ flex-shrink์ ๊ฐ์ 2๋ก ํ ๊ฒฝ์ฐ ์๋ 1์ ๊ฐ ๋ณด๋ค 2๋ฐฐ ๋ ์ฐ๊ทธ๋ฌ์ง๊ฒ ๋๋ค.
flex-grow
flex-grow์ default = 0์ด๋ฉฐ ํด๋น ๊ฐ๋ก ์ถ์ด๋ ์ธ๋ก ์ถ์ด๋ container ๋ด์ ๊ณต๊ฐ์ด ๋จ์ ์์ ๊ฒฝ์ฐ ๋ง์ฝ ํน์ elem์ flex-grow: 1;๋ก ๊ฐ์ ์ค์ ํ ๊ฒฝ์ฐ ๋จ์ ๊ณต๊ฐ์ ์ค์ ํ elem์ด ๋ชจ๋ ์ฑ์ฐ๋ ํจ๊ณผ๊ฐ ์๋ค. ์ฐฝ์ ํฌ๊ธฐ๋ฅผ ์ค์ฌ elem ๊ฐ์ ๊ฐ๊ฒฉ์ด ์์ ๊ฒฝ์ฐ ๋์ผํ width ๋๋ height๋ฅผ ๊ฐ์ง๊ฒ ๋๋ค.
flex-basis
flex-grow์ flex-shrink๊ฐ ์ผ์ด๋๊ธฐ์ ์์ ๊ธฐ๋ณธ ํฌ๊ธฐ๋ฅผ ์ค์ ํด์ฃผ๋ ๊ฐ์ด๋ค.
ย ย axis์๋ ๋๊ฐ์ง ์ถ์ด ์๋ค. main๊ณผ cross axis์ด๋ค. parent์ flex์ค์ ์ flex-direction์ default๋ก row๊ฐ ์ค์ ์ด ๋์ด ์๋๋ฐ ๊ทธ ๋์ main axis๋ row(๊ฐ๋ก)๊ฐ ๋๊ณ cross axis๋ column(์ธ๋ก)์ด ๋๋ค.
ย ย ๋ง์ฝ flex-direction์ด column์ผ๋ก ์ค์ ๋์ด ์์ ์ ๊ทธ ๋์ main axis ๋ column์ด ๋๊ณ cross axissms row๊ฐ ๋๋ค.
main axis or cross axis์์ ์๋ element์ ๋ฐฐ์ด์ ๊ด์ฅํ๋ property
main axis or cross axis ์์ ์๋ element์ ๋ฐฐ์ด์ ๊ด์ฅํ๋ property
align-self
cross axis์ถ์ ์๋ elem ์ค ํน์ elem์ ๊ด์ฅํ์ฌ ํฌ์ง์
ํ ์ ์๋ค. ์๋ฅผ ๋ค์ด ๋ถ๋ชจ๊ฐ ์ปจํ
์ด๋ ๋ฐ์ค์ด๊ณ ๊ทธ
์์ ์์์ด 5๋ช
์ด ์๋ค๋ฉด align-self property๋ฅผ ์ด์ฉํ ๊ฒฝ์ฐ 5๋ช
์ค ํน์ ํ ์์์ ์ ๊ทผํด์ ํด๋น ์์น๋ฅผ ์กฐ์ ํ
์ ์๋ ๊ฒ์ด๋ค.
align-content
cross axis์ถ์ ์๋ elem ๊ฐ์ ์์น๋ฅผ ์กฐ์ ํ๋ค.
justify-self
์์ ๋๋ฌธ์ด๋ค. ๋ค๋ง ๋๊ฐ์ง ํน์ฑ์ด ๋๋์ด์ง ๊ฒ์ flex-direction์ ๋ฐ๋ผ main๊ณผ cross์ถ์ด ๋ฌ๋ผ์ง๊ธฐ ๋๋ฌธ์ ๊ทธ์
๋ฐ๋ฅธ ์ถ ์์ ์๋ ์์๋ค์ ๋ฐฐ์ด์ ๊ด์ฅํ๊ธฐ ์ํด ๋๋ ๊ฒ ๋ฟ ๊ฐ๋
์ ์ผ๋ก ๊ธฐ๋ฅ์ ์ผ๋ก ๊ฐ์ ์ญํ ์ ํ๋ค.
order
html code๋ฅผ ๋ณ๊ฒฝํ ์ ์์ ๋ elem์ order propery๋ฅผ ๋ถ์ฌํด์ ์์๋ฅผ ๊ด์ฅํ ์ ์๋ค. html code์ ์์น๋ฅผ ๋ณ
๊ฒฝํ์ง ์๊ณ CSS๋ฅผ ํตํด ์์๋ง ๋ณ๊ฒฝํ ์ ์๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ์ ์ฉํ ๊ธฐ๋ฅ์ด๋ผ๊ณ ๋ณผ ์ ์๋ค.
wrap
child elem์ ๊ฐ์ง parent elem์ ๋ถ์ฌํ๋ ์์ฑ. parent๊ฐ flex์ด๊ณ child์์๋ฅผ elem์ผ๋ก ๊ฐ๊ณ ์์ ์ elem์
ํฌ๊ธฐ๋ฅผ ์ค์ ํ ํ ํด๋น ํฌ๊ธฐ๋ฅผ ์ ์งํ๊ณ ์ถ์ ๊ฒฝ์ฐ parent elem์ attribute๋ก flex-wrap: wrap; ์ฝ๋๋ฅผ ์์ฑํ๋ค
.