Languages/CSS

[CSS] flexbox ๋ž€? / ์‚ฌ์šฉ๋ฒ•

MOONCO 2021. 5. 28. 20:47

๐Ÿ‘‰ flexbox๋ž€?

์—ฌ๋Ÿฌ๊ฐ€์ง€ ์š”์†Œ๋“ค(html ํƒœ๊ทธ)์„, ์ž์œ  ์ž์žฌ๋กœ ๋””์ž์ธ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“  ๋ฐ•์Šค

flexbox ๋‚ด๋ถ€์˜ ์š”์†Œ๋“ค์€, flexbox์˜ ๊ทœ์น™์„ ๊ธฐ์ค€์œผ๋กœ ์œ„์น˜์™€, ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•œ๋‹ค.


display: flex; ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ flexbox๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.
// HTML
<html>
  <head>
  </head>
  <body>
    <div class="container">
      <div>์•ˆ๋…•</div>
      <div>ํ•˜์„ธ์š”</div>
      <div>?</div>
    </div>
  </body>
</html>
// CSS
.container {
  display: flex;
}

 

์‚ฌ์šฉ์ „

 

์‚ฌ์šฉํ›„

 

๐Ÿ‘‰ flex-shrink ๋ž€?

flexbox์˜ ๊ณต๊ฐ„์ด ๋ถ€์กฑํ• ๋•Œ, ๊ฐ ํ•ญ๋ชฉ์˜ ์‚ฌ์ด์ฆˆ๋ฅผ ์ค„์ธ๋‹ค.

ํ•ญ๋ชฉ : flex-item ์š”์†Œ ( display : flex๊ฐ€ ์ ์šฉ๋œ Container ๋‚ด๋ถ€ ์š”์†Œ ) 

 

flex-shrink ์‚ฌ์šฉ๋ฒ•

 

1. flex-shrink : 0 ( ์ค„์ด์ง€ ์•Š๊ณ , ์›๋ณธ ์‚ฌ์ด์ฆˆ๋กœ ์‚ฌ์šฉ )

{
  flex-shrink: 0;
}

 

2. border-box ( 1๋งŒํผ ์ค„์—ฌ์„œ ์‚ฌ์šฉ )

{
  flex-shrink: 1;
}

 


๐Ÿ‘‰ flex-grow ๋ž€?

flexbox์˜ ๊ณต๊ฐ„์ด ๋ถ€์กฑํ• ๋•Œ ์„ ํƒํ•œ ํ•ญ๋ชฉ์˜ ํฌ๊ธฐ๋ฅผ ๋Š˜๋ฆฌ๊ณ , ๋‹ค๋ฅธ ํ•ญ๋ชฉ์˜ ํฌ๊ธฐ๋ฅผ ์ค„์ธ๋‹ค.

( ๋‚˜๋จธ์ง€ ์š”์†Œ์˜ n๋ฐฐ๊ฐ€ ๋˜๋„๋ก )

ํ•ญ๋ชฉ : flex-item ์š”์†Œ ( display : flex๊ฐ€ ์ ์šฉ๋œ Container ๋‚ด๋ถ€ ์š”์†Œ ) 

 

flex-grow ์‚ฌ์šฉ๋ฒ•

 

1. flex-grow : 1 ( ์ˆซ์ž๊ฐ€ ์ปค์งˆ์ˆ˜๋ก, ํ•ด๋‹นํ•ญ๋ชฉ์˜ ํฌ๊ธฐ๊ฐ€ ์ปค์ง )

{
  flex-grow: 1;
}
๋ฐ˜์‘ํ˜•