whatisthis?
css. FlexBox (display: flex) - (ไธ) ๋ณธ๋ฌธ
FlexBox
๐ก key points
dispaly: flex ์ ์ธ
๊ฐ๋ก์ ๋ ฌ? ์ธ๋ก์ ๋ ฌ? (flex-direction)
๋ฌด์กฐ๊ฑด ํ์ค์์ ๋ค ์ ๋ ฌ? (flex-wrap)
์์ดํ ์ ๋ ฌ(align-items, justify-contents)
flex๋ฅผ ํ๋ฉด ๋๊ฐ์ ์ถ์ด ์๋์ผ๋ก ์๊น. (๋์ ๋ณด์ด์ง๋ x)
flex-direction์ด ๋ฌด์์ด๋์ ๋ฐ๋ผ์ ์ถ์ ์์น๊ฐ ๋ฌ๋ผ์ง๋ค.
flex-direction์ ๋ฐ๋ผ main ์ถ์ด ์๊ธฐ๊ณ , (default, ์ฆ row์ผ๋ ์ข์ฐ๋ก)
main์ถ์ ์์ง์ผ๋ก cross์ถ์ด ์๊ธด๋ค.
main axis๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๋ ค๋ฉด, justify-content
cross axis๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๋ ค๋ฉด, align-items(ํน์ align-content)
๐ jusify-content
- main axis ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ
flex-start | ์์ดํ ์ ํ ๋ฉ์ด๋ฆฌ๋ก ๋ฌถ์ด, ์ํ๋ฐฉํฅ ์์ ์ ์ ์์น์ํด |
flex-enter | ์์ดํ ์ ํ ๋ฉ์ด๋ฆฌ๋ก ๋ฌถ์ด, ์ํ๋ฐฉํฅ์ ๋ ์ ์ ์์น์ํด |
center | ์์ดํ ์ ํ ๋ฉ์ด๋ฆฌ๋ก ๋ฌถ์ด, ์ํ๋ฐฉํฅ์ ์ค์์ ์์น์ํด |
space-between | ์์ดํ ์ ์ปจํ ์ด๋์ ์์ชฝ ๋์ ๋ง์ถฐ ์ ๋ ฌ |
space-around | ์ปจํ
์ด๋์ ์์ชฝ ๋์ ๊ธฐ์ค์ผ๋ก ๊ฐ ์์ดํ ์ ์ , ํ์ ์ผ์ ํ ๊ฐ๊ฒฉ์ ๊ณต๊ฐ์ ๋ง๋ค์ด ์ ๋ ฌ |
space-between | ๐ฅ | d | ๐ฅ | d | ๐ฅ | ||
space-around | d | ๐ฅ | 2d | ๐ฅ | 2d | ๐ฅ | d |
space-evenly | d | ๐ฅ | d | ๐ฅ | d | ๐ฅ | d |
๐ align-items
- cross axis ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ
flex-start | ์์ดํ ์ ํ ๋ฉ์ด๋ฆฌ๋ก ๋ฌถ์ด, ์์ง๋ฐฉํฅ์ ์์ ์ ์ ์์น |
flex-enter | ์์ดํ ์ ํ ๋ฉ์ด๋ฆฌ๋ก ๋ฌถ์ด, ์์ง๋ฐฉํฅ์ ๋ ์ ์ ์์น |
center | ์์ดํ ์ ํ ๋ฉ์ด๋ฆฌ๋ก ๋ฌถ์ด, ์์ง๋ฐฉํฅ์ ์ค์์ ์์น |
baseline | ์์ดํ ์ ์ปจํ ์ด๋์ baseline์ ๋ง์ถฐ ์ ๋ ฌ |
stretch | ์ปจํ
์ด๋์ ์์ชฝ ๋์ ๊ธฐ์ค์ผ๋ก ๊ฐ ์์ดํ ์ ์ , ํ์ ์ผ์ ํ ๊ฐ๊ฒฉ์ ๊ณต๊ฐ์ ๋ง๋ค์ด ์ ๋ ฌ |
+)
๐ align-content
- flex-wrap์ wrap์ผ๋ก ์ค์ ํด์ผ ์๋ฏธ์์! (์ฌ๋ฌ์ค๋ก)
flex-wrap์ด wrap์ ์ฌ์ฉํ๋ ์๊ฐ
flex-line์ด ๋๊ฐ ์๊ธฐ๊ฒ ๋จ. (๊ฐ ์ค๋ง๋ค)
๊ฐ๊ฐ์ flex-line์ ํ๋ฅด๋ cross axis๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๋ฏ๋ก
์๋์ ๊ฐ์ด ์ด์ํ ๊ณต๋ฐฑ์ด ์๊ธด๊ฒ์ฒ๋ผ ๋ณด์ธ๋ค.
์ฌ์ค์ ๊ณต๋ฐฑ์ด ์๊ธด๊ฒ ์๋๋ผ flex-line์ด ๋๊ฐ์ฌ์ ์ด๋ ๊ฒ ๋ณด์ด๋๊ฒ.
flex-wrap์ wrap์ผ๋ก ํ์ ๋, ๊ฐ flex-line์ ๊ธฐ์ค์ผ๋ก ํ์ง ์๊ณ
content ์ ์ฒด๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๊ณ ์ถ์๋ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋ก
align-content ์ด๋ค!
โโ
align-items์ ๋ง์ฐฌ๊ฐ์ง๋ก center, flex-start, flex-end ๋ฑ์ ๊ฐ ์ฌ์ฉ ๊ฐ๋ฅ.
์ถ๊ฐ๋ก, wrap์ ํด์ ๋ ์ค์ด ๋ ๊ฒ์ด๋ฏ๋ก, justify content์์ ์ผ๋ ๊ฐ์ธ
align-content: space-around, space-between, space-evenly๋ ์ฌ์ฉ ๊ฐ๋ฅ.
๐ tip
์ align-items
(ํด๋ณด๊ณ ๋ญ๊ฐ ์ด์ํ๋ฉด)
ํ align-content
๐ก order ์์ฑ
- flex ์ฌ์ฉ์ ๋งํฌ์ ๊ณผ ์๊ด ์์ด css ์ ์ฉ ์์ ๋ฐ๊ฟ๋ ๋๋ค!
- order๊ฐ์ ์ค์ ์์๋ฅผ ๋ฐ๊ฟ ์ ์์.
.flex-container {
display: flex;
flex-direction: row;
}
.child1 {
order: 2
}
.child2 {
order: 1
}
.child3 {
order: 3
}
order CSS ์์ฑ์ ํ๋ ์ค ๋๋ ๊ทธ๋ฆฌ๋ ์ปจํ ์ด๋ ์์์ ํ์ฌ ์์์ ๋ฐฐ์น ์์๋ฅผ ์ง์ ํฉ๋๋ค.
์ปจํ ์ด๋ ์์ดํ ์ ์ ๋ ฌ ์์๋ ์ค๋ฆ์ฐจ์ order ๊ฐ์ด๊ณ , ๊ฐ์ ๊ฐ์ผ ๊ฒฝ์ฐ ์์ค ์ฝ๋์ ์์๋๋ก ์ ๋ ฌ๋ฉ๋๋ค.
ref.
+) reference lecture
'WEB STUDY > HTML,CSS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
CSS - ๋ฏธ๋์ด์ฟผ๋ฆฌ (Media Query) (0) | 2022.02.26 |
---|---|
css. CSS At-rules(At-๊ท์น) ์ด์ ๋ฆฌ (0) | 2022.02.22 |
css. FlexBox (display: flex) - (ไธ) (0) | 2022.02.22 |
css. z-index (z์ธ๋ฑ์ค) (0) | 2022.02.11 |
css. CSS ์ ์ฉ ์ฐ์ ์์ (0) | 2022.02.07 |