[flex-box] align-items/self/content

๐Ÿ“„ align-items (Flex Item์ด ํ•œ์ค„์ผ ๋•Œ ์‚ฌ์šฉ)

ํ”Œ๋ ‰์Šค ์ปจํ…Œ์ด๋„ˆ์˜ ํ”Œ๋ ‰์Šค ์•„์ดํ…œ๋“ค์ด ์–ด๋–ค ์‹์œผ๋กœ ์ •๋ ฌ๋  ๊ฒƒ์ธ์ง€ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

align-items: stretch; /*๊ธฐ๋ณธ๊ฐ’, ์•„์ดํ…œ๋“ค์ด ๊ต์ฐจ์ถ•์— ์ŠคํŠธ๋ ˆ์น˜๋˜์–ด ํฌ๊ธฐ๊ฐ€ ๋Š˜์–ด๋‚จ.*/
align-items: flex-start; /*stretch๊ฐ€ ๋˜์ง€ ์•Š๊ณ  ๊ต์ฐจ์ถ•์˜ ์•ž์ชฝ์— ๋ฐฐ์น˜๋จ*/
align-items: flex-end; /*๊ต์ฐจ์ถ•์˜ ๋์ ์œผ๋กœ๋ถ€ํ„ฐ ์‹œ์ž‘์ ์„ ํ–ฅํ•ด ๋ฐฐ์น˜*/
align-items: center; /* ๊ต์ฐจ์ถ•์˜ ์ค‘์‹ฌ๋ถ€์— ๋ฐฐ์น˜*/

๐Ÿ“„ align-self

๊ฐ๊ฐ์˜ ํ”Œ๋ ‰์Šค์•„์ดํ…œ์ด ๊ต์ฐจ์ถ•์—์„œ ์–ด๋–ค ์‹์œผ๋กœ ์ •๋ ฌ๋  ๊ฒƒ์ธ์ง€ ์Šค์Šค๋กœ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

li:nth-child(3) {
  align-self: flex-start;
  /*ul(์ปจํ…Œ์ด๋„ˆ)๋ชฉ๋ก ์ค‘ 3๋ฒˆ์งธ li(์•„์ดํ…œ)์—๋งŒ flex-start์ ์šฉ*/
}

๐Ÿ“„ align-content(Flex Item์ด ํ•œ์ค„์ด์ƒ์ผ ๋•Œ ์‚ฌ์šฉ)

๊ต์ฐจ์ถ• ์œ„์—์„œ justify-content์™€ ๋™์ผํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์†์„ฑ์ž…๋‹ˆ๋‹ค.

  1. flex-wrap์˜ ๊ฐ’์ด wrap์œผ๋กœ ์ง€์ •๋˜์–ด ์žˆ์„ ๋•Œ
  2. ์•„์ดํ…œ์„ ๋ฐฐ์น˜ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ๊ณต๊ฐ„๋ณด๋‹ค ํ”Œ๋ ‰์Šค ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋” ํด ๋•Œ
align-content: space-around; /*ํ–‰์ด ์—ฌ๋Ÿฌ๊ฐœ๊ฐ€ ๋˜์—ˆ์„ ๋•Œ ์š”์†Œ๋“ค์ด ๋™์ผํ•œ ์—ฌ๋ฐฑ์„ ๊ฐ€์ง€๊ฒŒ ๋จ.*/
align-content: space-between; /*์–‘์ชฝ ์—ฌ๋ฐฑ์ด ์‚ฌ๋ผ์ง„ ์ƒํƒœ์—์„œ ์š”์†Œ๋“ค์ด ๋™์ผํ•œ ์—ฌ๋ฐฑ์„ ๊ฐ€์ง€๊ฒŒ ๋จ.*/

๊ฐ„๋‹จํžˆ ๋งํ•ด, align-items๋Š” flex-wrap์ด nowrap(๊ธฐ๋ณธ๊ฐ’)์ผ๋•Œ์˜ ๊ต์ฐจ์ถ• ๋ฐฐ์น˜๋ฐฉ๋ฒ•์ด๊ณ 
align-content๋Š” flex-wrap์ด wrap์ผ๋•Œ์˜ ๊ต์ฐจ์ถ• ๋ฐฐ์น˜๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

๐Ÿ“„ flex-basis(๊ธฐ๋ณธ๊ฐ’ : auto)

ํ”Œ๋ ‰์Šค ์•„์ดํ…œ์˜ ์ดˆ๊ธฐ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
box-sizing์ด ๋”ฐ๋กœ ์„ค์ •๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ, ์ฝ˜ํ…์ธ  ๋ฐ•์Šค์˜ ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

li:nth-child(2) {
  /*ํ”Œ๋ ‰์Šค ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ฒ˜์Œ ๋งŒ๋“ค์–ด์กŒ์„ ๋•Œ ๊ธฐ๋ณธ ํฌ๊ธฐ๋ฅผ ์ •ํ•ด์คŒ.*/
  flex-basis: 100px; /*๋‘๋ฒˆ์งธ ์•„์ดํ…œ ๊ธฐ๋ณธ ํฌ๊ธฐ: 100px*/
  flex-shrink: 2;
}

๐Ÿ“„ flex

flex-grow, flex-shrink, flex-basis์˜ ์„ธ ๊ฐ€์ง€ ์†์„ฑ์„ ํ•œ๋ฒˆ์— ์ •์˜ํ•  ์ˆ˜ ์žˆ๋Š” ๋‹จ์ถ• ์†์„ฑ์ž…๋‹ˆ๋‹ค.

.item {
  flex: 0 0 200px; /* 200px๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ์ž‘์„ ์ˆ˜ ์—†์Œ*/
  flex: 0 1 200px; /*๋Š˜์–ด๋‚˜์ง„ ์•Š์ง€๋งŒ ์ค„์–ด๋“ค ์ˆ˜๋Š” ์žˆ์Œ.*/
}

์ถœ์ฒ˜

  • ์œ ๋…ธ์ฝ”๋”ฉ

Leave a comment