pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://developer.mozilla.org/ko/docs/Web/CSS/Guides/Flexible_box_layout/Basic_concepts

„œλŠ” flexbox의 μ£Όμš” κΈ°λŠ₯에 λŒ€ν•œ κ°œμš”λ₯Ό λ‹€λ£Ήλ‹ˆλ‹€. 더 μžμ„Έν•œ λ‚΄μš©μ€ κ°€μ΄λ“œμ˜ λ‹€λ₯Έ κΈ€μ—μ„œ νƒκ΅¬ν•˜κ²Œ 될 κ²ƒμž…λ‹ˆλ‹€." />

This page was translated from English by the community. Learn more and join the MDN Web Docs community.

View in English Always switch to English

flexbox의 κΈ°λ³Έ κ°œλ…

일λͺ… flexbox라 λΆˆλ¦¬λŠ” Flexible Box module은 flexbox μΈν„°νŽ˜μ΄μŠ€ λ‚΄μ˜ μ•„μ΄ν…œ κ°„ 곡간 λ°°λΆ„κ³Ό κ°•λ ₯ν•œ μ •λ ¬ κΈ°λŠ₯을 μ œκ³΅ν•˜κΈ° μœ„ν•œ 1차원 λ ˆμ΄μ•„μ›ƒ λͺ¨λΈ 둜 μ„€κ³„λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 이 κΈ€μ—μ„œλŠ” flexbox의 μ£Όμš” κΈ°λŠ₯에 λŒ€ν•œ κ°œμš”λ₯Ό λ‹€λ£Ήλ‹ˆλ‹€. 더 μžμ„Έν•œ λ‚΄μš©μ€ κ°€μ΄λ“œμ˜ λ‹€λ₯Έ κΈ€μ—μ„œ νƒκ΅¬ν•˜κ²Œ 될 κ²ƒμž…λ‹ˆλ‹€.

flexboxλ₯Ό 1차원이라 μΉ­ν•˜λŠ” 것은, λ ˆμ΄μ•„μ›ƒμ„ λ‹€λ£° λ•Œ ν•œ λ²ˆμ— ν•˜λ‚˜μ˜ 차원(ν–‰μ΄λ‚˜ μ—΄)λ§Œμ„ λ‹€λ£¬λ‹€λŠ” λœ»μž…λ‹ˆλ‹€. μ΄λŠ” ν–‰κ³Ό 열을 ν•¨κ»˜ μ‘°μ ˆν•˜λŠ” CSS κ·Έλ¦¬λ“œ λ ˆμ΄μ•„μ›ƒμ˜ 2차원 λͺ¨λΈκ³ΌλŠ” λŒ€μ‘°λ©λ‹ˆλ‹€.

flexbox의 두 개의 μΆ•

flexboxλ₯Ό 닀루렀면 μ£ΌμΆ•κ³Ό κ΅μ°¨μΆ•μ΄λΌλŠ” 두 개의 좕에 λŒ€ν•œ μ •μ˜λ₯Ό μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€. 주좕은 flex-direction 속성을 μ‚¬μš©ν•˜μ—¬ μ§€μ •ν•˜λ©° ꡐ차좕은 이에 수직인 μΆ•μœΌλ‘œ κ²°μ •λ©λ‹ˆλ‹€. flexbox의 λ™μž‘μ€ κ²°κ΅­ 이 두 개의 좕에 λŒ€ν•œ 문제둜 ν™˜μ›λ˜κΈ° λ•Œλ¬Έμ— 이듀이 μ–΄λ–»κ²Œ λ™μž‘ν•˜λŠ”μ§€ μ²˜μŒλΆ€ν„° μ΄ν•΄ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€.

μ£ΌμΆ•

주좕은 flex-direction에 μ˜ν•΄ μ •μ˜λ˜λ©° 4개의 값을 κ°€μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€:

  • row
  • row-reverse
  • column
  • column-reverse

row ν˜Ήμ€ row-reverseλ₯Ό μ„ νƒν•˜λ©΄ 주좕은 인라인 λ°©ν–₯으둜 행을 λ”°λ¦…λ‹ˆλ‹€.

If flex-direction is set to row the main axis runs along the row in the inline direction.

column ν˜Ήμ€ column-reverse 을 μ„ νƒν•˜λ©΄ 주좕은 νŽ˜μ΄μ§€ μƒλ‹¨μ—μ„œ ν•˜λ‹¨μœΌλ‘œ 블둝 λ°©ν–₯을 λ”°λ¦…λ‹ˆλ‹€.

If flex-direction is set to column the main axis runs in the block direction.

ꡐ차좕

ꡐ차좕은 주좕에 μˆ˜μ§ν•˜λ―€λ‘œ, λ§Œμ•½ flex-direction(μ£ΌμΆ•)이 row λ‚˜ row-reverse 라면 ꡐ차좕은 μ—΄ λ°©ν–₯을 λ”°λ¦…λ‹ˆλ‹€.

If flex-direction is set to row then the cross axis runs in the block direction.

주좕이 column ν˜Ήμ€ column-reverse 라면 ꡐ차좕은 ν–‰ λ°©ν–₯을 λ”°λ¦…λ‹ˆλ‹€.

If flex-direction is set to column then the cross axis runs in the inline direction.

flex μš”μ†Œλ₯Ό μ •λ ¬ν•˜κ³  끝을 λ§žμΆ”(justify)λ €λ©΄ μ–΄λŠ 좕이 μ–΄λŠ λ°©ν–₯인지 μ΄ν•΄ν•˜λŠ” 것이 μ€‘μš”ν•©λ‹ˆλ‹€; flexboxλŠ” μ£ΌμΆ•, ꡐ차좕을 따라 ν•­λͺ©μ„ μ •λ ¬ν•˜κ³  끝을 λ§žμΆ”λŠ” 각쒅 속성듀을 μ μš©ν•˜λŠ” λ°©μ‹μœΌλ‘œ λ™μž‘ν•©λ‹ˆλ‹€.

μ‹œμž‘μ„ κ³Ό 끝선

flexboxκ°€ μ“°κΈ° 방법(writing mode)을 κ°€μ •ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 것은 μƒλ‹Ήνžˆ μ€‘μš”ν•©λ‹ˆλ‹€. 과거의 CSSλŠ” μ™Όμͺ½μ—μ„œ 였λ₯Έμͺ½μœΌλ‘œ ν–₯ν•˜λŠ” κ°€λ‘œ λ°©ν–₯의 μ“°κΈ° 방법에 치우쳐 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. ν•˜μ§€λ§Œ ν˜„λŒ€μ˜ λ ˆμ΄μ•„μ›ƒμ€ λ‹€μ–‘ν•œ μ“°κΈ° 방법을 포괄해야 ν•˜λ―€λ‘œ, 더이상 ν…μŠ€νŠΈκ°€ λ¬Έμ„œμ˜ μ™Όμͺ½ μƒλ‹¨μ—μ„œ μ‹œμž‘ν•΄μ„œ 였λ₯Έμͺ½μœΌλ‘œ ν–₯ν•œλ‹€κ³  κ°€μ •ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μƒˆ 라인이 항상 μ•„λž˜μ— μŒ“μΈλ‹€κ³  κ°€μ •ν•˜μ§€λ„ μ•ŠμŠ΅λ‹ˆλ‹€.

λ‹€λ₯Έ κΈ€μ—μ„œ flexbox와 μ“°κΈ° 방법 λͺ…μ„Έ(writing mode spec.)κ°€ μ–΄λ–€ 관련이 μžˆλŠ”μ§€ μ•Œμ•„λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έ 전에, 이 κΈ€μ—μ„œ flex μš”μ†Œμ˜ μ •λ ¬ λ°©ν–₯에 "μ™Όμͺ½, 였λ₯Έμͺ½, μœ„, μ•„λž˜"λ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” 이유λ₯Ό μ•Œ 수 μžˆμ—ˆμœΌλ©΄ ν•©λ‹ˆλ‹€.

flex-direction이 rowκ³  μ˜μ–΄ λ¬Έμž₯을 λ¬Έμ„œμ— μ“°κ³  μžˆλ‹€λ©΄, μ£ΌμΆ•μ˜ μ‹œμž‘μ„ μ€ μ™Όμͺ½ 끝, 끝선은 였λ₯Έμͺ½ 끝이 될 κ²ƒμž…λ‹ˆλ‹€.

Working in English the start edge is on the left.

μ•„λžμ–΄ λ¬Έμž₯을 μ“°κ³  μžˆλ‹€λ©΄, μ£ΌμΆ•μ˜ μ‹œμž‘μ„ μ€ 였λ₯Έμͺ½ 끝, 끝 선은 μ™Όμͺ½ 끝이 될 κ²ƒμž…λ‹ˆλ‹€.

The start edge in a RTL language is on the right.

μ˜μ–΄μ™€ μ•„λžμ–΄λŠ” λͺ¨λ‘ κ°€λ‘œ μ“°κΈ°λ₯Ό μ±„νƒν•˜κ³  μžˆμœΌλ―€λ‘œ 두 μ˜ˆμ‹œμ—μ„œ κ΅μ°¨μΆ•μ˜ μ‹œμž‘μ„ μ€ flex μ»¨ν…Œμ΄λ„ˆμ˜ μœ„ 끝이며 끝선은 μ•„λž˜ λμž…λ‹ˆλ‹€.

쑰금만 μ§€λ‚˜λ©΄ μ™Όμͺ½-였λ₯Έμͺ½μœΌλ‘œ μƒκ°ν•˜λŠ” 것보닀 μ‹œμž‘μ„ -λμ„ μœΌλ‘œ μƒκ°ν•˜λŠ” 것이 κΈˆμƒˆ μžμ—°μŠ€λŸ¬μ›Œμ§ˆ κ²ƒμž…λ‹ˆλ‹€. λ™μΌν•œ νŒ¨ν„΄μ„ λ”°λ₯΄λŠ” CSS κ·Έλ¦¬λ“œ λ ˆμ΄μ•„μ›ƒ 같은 방법을 λ‹€λ£° λ•Œλ„ μ‰½κ²Œ 적응할 수 μžˆμ„ κ²ƒμž…λ‹ˆλ‹€.

flex μ»¨ν…Œμ΄λ„ˆ

λ¬Έμ„œμ˜ μ˜μ—­ μ€‘μ—μ„œ flexboxκ°€ λ†“μ—¬μžˆλŠ” μ˜μ—­μ„ flex μ»¨ν…Œμ΄λ„ˆλΌκ³  λΆ€λ¦…λ‹ˆλ‹€. flex μ»¨ν…Œμ΄λ„ˆλ₯Ό μƒμ„±ν•˜λ €λ©΄ μ˜μ—­ λ‚΄μ˜ μ»¨ν…Œμ΄λ„ˆ μš”μ†Œμ˜ display 값을 flex ν˜Ήμ€ inline-flex둜 μ§€μ •ν•©λ‹ˆλ‹€. 이 값이 μ§€μ •λœ μ»¨ν…Œμ΄λ„ˆμ˜ 일차 μžμ‹(direct children) μš”μ†Œκ°€ flex ν•­λͺ©μ΄ λ©λ‹ˆλ‹€. display μ†μ„±λ§Œ μ§€μ •ν•˜μ—¬ flex μ»¨ν…Œμ΄λ„ˆλ₯Ό μƒμ„±ν•˜λ©΄ λ‹€λ₯Έ flex κ΄€λ ¨ 속성듀은 μ•„λž˜μ²˜λŸΌ κΈ°λ³Έ 값이 μ§€μ •λ©λ‹ˆλ‹€.

  • ν•­λͺ©μ€ ν–‰μœΌλ‘œ λ‚˜μ—΄λ©λ‹ˆλ‹€. (flex-direction μ†μ„±μ˜ 기본값은 rowμž…λ‹ˆλ‹€).
  • ν•­λͺ©μ€ μ£ΌμΆ•μ˜ μ‹œμž‘ μ„ μ—μ„œ μ‹œμž‘ν•©λ‹ˆλ‹€.
  • ν•­λͺ©μ€ μ£Ό 차원 μœ„μ—μ„œ λŠ˜μ–΄λ‚˜μ§€λŠ” μ•Šμ§€λ§Œ 쀄어듀 수 μžˆμŠ΅λ‹ˆλ‹€.
  • ν•­λͺ©μ€ κ΅μ°¨μΆ•μ˜ 크기λ₯Ό μ±„μš°κΈ° μœ„ν•΄ λŠ˜μ–΄λ‚©λ‹ˆλ‹€.
  • flex-basis 속성은 auto둜 μ§€μ •λ©λ‹ˆλ‹€.
  • flex-wrap 속성은 nowrap으둜 μ§€μ •λ©λ‹ˆλ‹€.

μ΄λ ‡κ²Œλ˜λ©΄ flex ν•­λͺ©λ“€μ€ 각 ν•­λͺ© 별 λ‚΄λΆ€ μš”μ†Œμ˜ 크기둜 주좕을 따라 μ •λ ¬λ©λ‹ˆλ‹€. μ»¨ν…Œμ΄λ„ˆμ˜ 크기보닀 더 λ§Žμ€ ν•­λͺ©μ΄ μžˆμ„ 경우 행을 λ°”κΎΈμ§€ μ•Šκ³  μ£ΌμΆ• λ°©ν–₯으둜 흘러 λ„˜μΉ˜κ²Œ λ©λ‹ˆλ‹€. μ–΄λ–€ ν•­λͺ©μ΄ λ‹€λ₯Έ ν•­λͺ©λ³΄λ‹€ 높이 값이 크닀면 λ‚˜λ¨Έμ§€ λͺ¨λ“  ν•­λͺ©λ“€μ€ 그에 맞게 ꡐ차좕을 따라 λŠ˜μ–΄λ‚˜κ²Œ λ©λ‹ˆλ‹€.

λ‹€μŒμ˜ 라이브 μ˜ˆμ‹œλ₯Ό 톡해 μ–΄λ–»κ²Œ λ³΄μ—¬μ§€λŠ”μ§€ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€. flexbox의 초기 λ™μž‘μ„ μ‹œν—˜ν•΄λ³΄λ €λ©΄ ν•­λͺ©μ„ μΆ”κ°€ν•˜κ±°λ‚˜ μˆ˜μ •ν•΄λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

flex-direction μ§€μ •

flex μ»¨ν…Œμ΄λ„ˆμ— flex-direction 속성을 μ§€μ •ν•˜λ©΄ flex ν•­λͺ©μ΄ λ‚˜μ—΄λ˜λŠ” λ°©ν–₯을 λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€. flex-direction: row-reverse 라고 μ§€μ •ν•˜λ©΄ ν–‰μœΌλ‘œ λ‚˜μ—΄λ˜λŠ” 것은 κ·ΈλŒ€λ‘œμ§€λ§Œ μ‹œμž‘ μ„ κ³Ό 끝 선이 μ„œλ‘œ λ°”λ€Œκ²Œ λ©λ‹ˆλ‹€.

flex-direction을 column으둜 μ§€μ •ν•˜λ©΄ 주좕이 λ³€κ²½λ˜κ³  ν•­λͺ©λ“€μ€ μ—΄λ‘œ λ‚˜μ—΄λ©λ‹ˆλ‹€. column-reverse둜 μ§€μ •ν•˜λ©΄ 그에 더해 μ‹œμž‘ μ„ κ³Ό 끝 선이 μ„œλ‘œ λ°”λ€Œκ²Œ λ©λ‹ˆλ‹€.

λ‹€μŒμ˜ 라이브 μ˜ˆμ‹œλŠ” flex-direction이 row-reverse둜 μ§€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. row, column, column-reverse와 같은 값을 μ§€μ •ν•΄μ„œ μ–΄λ–»κ²Œ λ˜λŠ”μ§€ ν™•μΈν•΄λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

flex-wrap을 μ΄μš©ν•œ 볡수 ν–‰ flex μ»¨ν…Œμ΄λ„ˆ μ§€μ •

flexboxλŠ” 1차원 λͺ¨λΈμ΄μ§€λ§Œ flex ν•­λͺ©μ΄ μ—¬λŸ¬ 행에 λ‚˜μ—΄λ˜λ„λ‘ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έ 경우 각 행이 μƒˆλ‘œμš΄ flex μ»¨ν…Œμ΄λ„ˆλΌκ³  생각해야 ν•©λ‹ˆλ‹€. 곡간 배뢄은 ν•΄λ‹Ή ν–‰μ—μ„œλ§Œ 이루어지며 λ‹€λ₯Έ 행은 영ν–₯을 λ°›μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

ν•­λͺ©μ΄ μ—¬λŸ¬ 행에 λ‚˜μ—΄λ˜λ„λ‘ ν•˜λ €λ©΄ flex-wrap μ†μ„±μ˜ 값을 wrap으둜 μ§€μ •ν•©λ‹ˆλ‹€. 그러면 ν•­λͺ©μ΄ ν•˜λ‚˜μ˜ 행에 λ“€μ–΄κ°€μ§€ μ•Šμ„ μ •λ„λ‘œ 클 경우 λ‹€λ₯Έ 행에 λ°°μΉ˜λ©λ‹ˆλ‹€. μ•„λž˜μ˜ 라이브 μ˜ˆμ‹œμ— μžˆλŠ” flex ν•­λͺ©μ€ 폭이 μ§€μ •λ˜μ–΄ 있으며 ν•­λͺ©λ“€μ˜ 폭의 합은 flex μ»¨ν…Œμ΄λ„ˆμ— λ“€μ–΄κ°€κΈ°μ—λŠ” λ„ˆλ¬΄ λ„“μŠ΅λ‹ˆλ‹€. flex-wrap속성이 wrap으둜 μ§€μ •λ˜μ–΄ μžˆμœΌλ―€λ‘œ ν•­λͺ©μ€ μ—¬λŸ¬ 행에 λ‚˜μ—΄λ©λ‹ˆλ‹€. μ΄ˆκΉƒκ°’κ³Ό λ™μΌν•œ nowrap을 μ§€μ •ν•˜κ³  flexν•­λͺ©μ— λŒ€ν•œ ν™•λŒ€/μΆ•μ†Œ 방식을 λ³„λ„λ‘œ μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ flex ν•­λͺ©λ“€μ€ μ»¨ν…Œμ΄λ„ˆμ˜ 폭에 맞게 μ€„μ–΄λ“­λ‹ˆλ‹€. nowrap을 μ§€μ •ν•˜λ©΄ ν•­λͺ©μ΄ μ „ν˜€ 쀄어듀 수 μ—†κ±°λ‚˜ μΆ©λΆ„νžˆ 쀄어듀 수 없을 λ•Œ ν˜λŸ¬λ„˜μΉ˜κ²Œ λ©λ‹ˆλ‹€.

Mastering Wrapping of Flex Items κ°€μ΄λ“œμ—μ„œ 더 μžμ„Έν•œ λ‚΄μš©μ„ 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.

μΆ•μ•½ν˜• 속성 flex-flow

flex-direction 속성과 flex-wrap 속성을 flex-flowλΌλŠ” μΆ•μ•½ μ†μ„±μœΌλ‘œ ν•©μΉ  수 μžˆμŠ΅λ‹ˆλ‹€. 첫 번째 값은 flex-direction이고 두 번째 값은 flex-wrapμž…λ‹ˆλ‹€.

λ‹€μŒμ˜ 라이브 μ˜ˆμ‹œμ—μ„œ 첫 번째 값을 flex-direction에 μ§€μ • κ°€λŠ₯ν•œ κ°’λ“€(row, row-reverse, column or column-reverse)둜 λ°”κΏ”λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€. 두 번째 값도 wrapμ΄λ‚˜ nowrap으둜 λ°”κΏ”λ³΄μ‹œκΈ° λ°”λžλ‹ˆλ‹€.

flex ν•­λͺ©μ— μ§€μ • κ°€λŠ₯ν•œ 속성듀

flex ν•­λͺ©μ— μ μš©ν•  수 μžˆλŠ” 속성은 λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

이 κΈ€μ—μ„œλŠ” μœ„μ˜ 속성듀에 λŒ€ν•΄ κ°„λž΅ν•˜κ²Œ μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€. μžμ„Έν•œ λ‚΄μš©μ€ Controlling Ratios of Flex Items on the Main Axisμ—μ„œ λ‹€λ£Ήλ‹ˆλ‹€.

500 ν”½μ…€μ˜ 크기λ₯Ό κ°–λŠ” flex μ»¨ν…Œμ΄λ„ˆ 내에 100 ν”½μ…€ 크기의 μžμ‹ μ„Έ κ°œκ°€ μ‘΄μž¬ν•  λ•Œ, μ‚¬μš©κ°€λŠ₯ν•œ 곡간 200 픽셀이 λ‚¨κ²Œ λ©λ‹ˆλ‹€. 기본적으둜 flexboxλŠ” 이 곡간을 λ§ˆμ§€λ§‰ μžμ‹ μš”μ†Œ λ‹€μŒμ— λΉˆκ³΅κ°„μœΌλ‘œ λ‚¨κ²¨λ‘‘λ‹ˆλ‹€.

This flex container has available space after laying out the items.

μœ„μ˜ μ„Έ κ°€μ§€ 속성을 λ³€κ²½ν•œλ‹€λŠ” 것은 flex ν•­λͺ©μ—κ²Œ μ‚¬μš©κ°€λŠ₯ν•œ 곡간을 λΆ„λ°°ν•˜λŠ” 방식을 λ³€κ²½ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. μ‚¬μš©κ°€λŠ₯ν•œ 곡간 κ°œλ…μ€ flex ν•­λͺ©μ„ μ •λ ¬ν•  λ•Œ 특히 μ€‘μš”ν•©λ‹ˆλ‹€.

flex-basis 속성

flex-basis 속성은 ν•­λͺ©μ˜ 크기λ₯Ό κ²°μ •ν•©λ‹ˆλ‹€. 이 μ†μ„±μ˜ 기본값은 auto이며, 이 경우 λΈŒλΌμš°μ €λŠ” ν•­λͺ©μ΄ 크기λ₯Ό κ°–λŠ”μ§€ ν™•μΈν•©λ‹ˆλ‹€. μœ„μ˜ 사진 μ˜ˆμ‹œμ˜ 경우 ν•­λͺ©μ˜ 크기가 100 ν”½μ…€μ΄λ―€λ‘œ flex-basis의 κ°’μœΌλ‘œ 100 픽셀이 μ‚¬μš©λ©λ‹ˆλ‹€.

flex ν•­λͺ©μ— 크기가 μ§€μ •λ˜μ–΄ μžˆμ§€ μ•ŠμœΌλ©΄, flex ν•­λͺ©μ˜ λ‚΄μš©λ¬Ό 크기가 flex-basis κ°’μœΌλ‘œ μ‚¬μš©λ©λ‹ˆλ‹€. λ”°λΌμ„œ flex μ»¨ν…Œμ΄λ„ˆμ—μ„œ display: flex μ†μ„±λ§Œμ„ μ§€μ •ν•˜λ©΄ flexν•­λͺ©λ“€μ΄ 각 λ‚΄μš©λ¬Ό 크기만큼 곡간을 μ°¨μ§€ν•˜κ²Œ λ©λ‹ˆλ‹€.

flex-grow 속성

flex-grow값을 μ–‘μˆ˜λ‘œ μ§€μ •ν•˜λ©΄ flex ν•­λͺ©λ³„λ‘œ μ£ΌμΆ• λ°©ν–₯ 크기가 flex-basis κ°’ μ΄μƒμœΌλ‘œ λŠ˜μ–΄λ‚  수 있게 λ©λ‹ˆλ‹€. μœ„μ˜ 사진 μ˜ˆμ‹œμ—μ„œ λͺ¨λ“  ν•­λͺ©μ˜ flex-grow 값을 1둜 μ§€μ •ν•˜λ©΄ μ‚¬μš©κ°€λŠ₯ν•œ 곡간은 각 ν•­λͺ©μ—κ²Œ λ™μΌν•˜κ²Œ λΆ„λ°°λ˜λ©°, 각 ν•­λͺ©μ€ 주좕을 따라 뢄배받은 κ°’λ§ŒνΌ μ‚¬μ΄μ¦ˆλ₯Ό 늘렀 곡간을 μ°¨μ§€ν•©λ‹ˆλ‹€.

첫 ν•­λͺ©μ˜ flex-grow 값을 2둜 μ§€μ •ν•˜κ³  λ‚˜λ¨Έμ§€ 두 개의 ν•­λͺ©μ„ 1둜 μ§€μ •ν•œλ‹€λ©΄ 각 ν•­λͺ©μ— μ§€μ •λœ flex-grow κ°’μ˜ λΉ„μœ¨μ— 따라 남은 곡간이 λΆ„λ°°λ©λ‹ˆλ‹€. 각 ν•­λͺ©μ˜ flex-grow λΉ„μœ¨μ΄ 2:1:1 μ΄λ―€λ‘œ 첫 ν•­λͺ©μ—κ²Œ 100 ν”½μ…€, 두 λ²ˆμ§Έμ™€ μ„Έ 번째 ν•­λͺ©μ—κ²Œ 50 ν”½μ…€μ”© λΆ„λ°°λ©λ‹ˆλ‹€.

flex-shrink 속성

flex-grow 속성이 μ£ΌμΆ•μ—μ„œ λ‚¨λŠ” 곡간을 ν•­λͺ©λ“€μ—κ²Œ λΆ„λ°°ν•˜λŠ” 방법을 κ²°μ •ν•œλ‹€λ©΄ flex-shrink 속성은 μ£ΌμΆ•μ˜ 곡간이 λΆ€μ‘±ν• λ•Œ 각 ν•­λͺ©μ˜ μ‚¬μ΄μ¦ˆλ₯Ό μ€„μ΄λŠ” 방법을 μ •μ˜ν•©λ‹ˆλ‹€. λ§Œμ•½ flex μ»¨ν…Œμ΄λ„ˆκ°€ flex ν•­λͺ©μ„ λͺ¨λ‘ 포함할 만큼 λ„‰λ„‰ν•œ 곡간을 κ°–κ³  μžˆμ§€ μ•Šκ³  flex-shrink 값이 μ–‘μˆ˜μ΄λ©΄ flex ν•­λͺ©μ€ flex-basis에 μ§€μ •λœ 크기보닀 μž‘μ•„μ§‘λ‹ˆλ‹€. λ˜ν•œ, flex-grow 속성과 λ§ˆμ°¬κ°€μ§€λ‘œ 더 큰 flex-shrink 값을 κ°–λŠ” ν•­λͺ©μ˜ μ‚¬μ΄μ¦ˆκ°€ 더 빨리 μ€„μ–΄λ“­λ‹ˆλ‹€.

ν•­λͺ©μ˜ μ΅œμ†Œ ν¬κΈ°λŠ” μ‹€μ œ μΆ•μ†ŒλŸ‰μ„ 계산할 λ•Œ 고렀되기 λ•Œλ¬Έμ— flex-shrink 속성이 flex-grow 속성에 λΉ„ν•΄ 덜 μΌκ΄€λœ λͺ¨μŠ΅μ„ 보여쀄지도 λͺ¨λ¦…λ‹ˆλ‹€. flex-shrink 속성이 ν•­λͺ©μ˜ μ‚¬μ΄μ¦ˆλ₯Ό κ²°μ •ν•˜λŠ” μ•Œκ³ λ¦¬μ¦˜μ— κ΄€ν•΄μ„œλŠ” Controlling Ratios of Flex Items on the Main Axisμ—μ„œ μžμ„Ένžˆ μ‚΄νŽ΄νžˆλ³΄κ² μŠ΅λ‹ˆλ‹€.

μ°Έκ³  : flex-grow 와 flex-shrink의 값이 λΉ„μœ¨μž„μ„ μœ μ˜ν•˜μ„Έμš”. flex ν•­λͺ©μ˜ flex 속성을 λͺ¨λ‘ 1 1 200px 둜 μ§€μ •ν•˜κ³  ν•œ ν•­λͺ©λ§Œ 크기가 λŠ˜μ–΄λ‚˜λŠ” λΉ„μœ¨μ„ 타 ν•­λͺ©μ˜ λ‘λ°°λ‘œ ν•˜κ³  μ‹ΆμœΌλ©΄ ν•΄λ‹Ή flex ν•­λͺ©μ˜ flex 속성을 2 1 200px둜 μ§€μ •ν•˜λ©΄ λ˜μ§€λ§Œ, flex 속성 값을 λͺ¨λ‘ 10 1 200px둜 μ§€μ •ν•˜κ³  λŠ˜μ–΄λ‚˜λŠ” λΉ„μœ¨μ„ 두 배둜 ν•˜κ³  싢은 ν•­λͺ©μ˜ flex 속성 κ°’λ§Œ 20 1 200px둜 지정해도 λ™μΌν•˜κ²Œ λ™μž‘ν•©λ‹ˆλ‹€.

μΆ•μ•½ν˜• 속성 flex

보톡은 flex-grow, flex-shrink, flex-basis 값을 각각 μ‚¬μš©ν•˜μ§€ μ•Šκ³  이 μ„Έ 속성을 ν•œλ²ˆμ— μ§€μ •ν•˜λŠ” flex μΆ•μ•½ν˜•μ„ 많이 μ‚¬μš©ν•©λ‹ˆλ‹€. flex μΆ•μ•½ν˜•μ˜ 값은 flex-grow, flex-shrink, flex-basis μˆœμ„œλ‘œ μ§€μ •λ©λ‹ˆλ‹€.

λ‹€μŒμ˜ 라이브 μ˜ˆμ‹œμ—μ„œ flex μΆ•μ•½ν˜•μ˜ 값듀을 μ‘°μ ˆν•˜λ©΄μ„œ μ‹œν—˜ν•΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. 첫 값이 flex-growλ₯Ό μ§€μ •ν•˜λ©°, 이 첫 값을 μ–‘μˆ˜λ‘œ ν•˜λ©΄ flex ν•­λͺ©μ΄ λ„“μ–΄μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€. 두 번째 값은 flex-shrink λ₯Ό μ§€μ •ν•˜λ©° 이 두 번째 값에 μ–‘μˆ˜λ₯Ό μ§€μ •ν•˜λ©΄ flex ν•­λͺ©μ΄ μ’μ•„μ§ˆ 수 μžˆμŠ΅λ‹ˆλ‹€. μ„Έ 번째 값은 flex-basisλ₯Ό μ§€μ •ν•˜λ©° 이 값은 flex ν•­λͺ©μ΄ λ„“μ–΄μ§€κ±°λ‚˜ μ’μ•„μ§ˆ λ•Œ κ³ λ €ν•˜λŠ” κΈ°μ€€ κ°’μž…λ‹ˆλ‹€.

flex μΆ•μ•½ν˜• ν‘œν˜„μ— μ‚¬μš©ν•  수 μžˆλŠ” 미리 μ •μ˜λœ μΆ•μ•½ 값듀이 μ•„λž˜μ— λ‚˜μ—΄λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 이 κ°’λ“€ λ§ŒμœΌλ‘œλ„ λŒ€λΆ€λΆ„μ˜ 경우(use-case)에 λŒ€μ‘ν•  수 μžˆμ„ 것 μž…λ‹ˆλ‹€.

  • flex: initial
  • flex: auto
  • flex: none
  • flex: <positive-number>

flex ν•­λͺ©μ„ flex: initial둜 μ§€μ •ν•˜λ©΄ flex: 0 1 auto 둜 μ§€μ •ν•œ 것과 λ™μΌν•˜κ²Œ λ™μž‘ν•©λ‹ˆλ‹€. 이 경우, flex ν•­λͺ©λ“€μ€ flex-growκ°€ 0μ΄λ―€λ‘œ flex-basis값보닀 컀지지 μ•Šκ³  flex-shrinkκ°€ 1μ΄λ―€λ‘œ flex μ»¨ν…Œμ΄λ„ˆ 곡간이 λͺ¨μžλΌλ©΄ 크기가 μ€„μ–΄λ“­λ‹ˆλ‹€. 또, flex-basisκ°€ autoμ΄λ―€λ‘œ flex ν•­λͺ©μ€ μ£ΌμΆ• λ°©ν–₯으둜 μ§€μ •λœ 크기 λ˜λŠ” 자기 λ‚΄λΆ€ μš”μ†Œ 크기 만큼 곡간을 μ°¨μ§€ν•©λ‹ˆλ‹€.

flex: auto 둜 μ§€μ •ν•˜λ©΄ flex: 1 1 auto둜 μ§€μ •ν•œ 것과 λ™μΌν•˜λ©°, flex:initial κ³ΌλŠ” μ£ΌμΆ• λ°©ν–₯ μ—¬μœ  곡간이 μžˆμ„ λ•Œ flex ν•­λͺ©λ“€μ΄ λŠ˜μ–΄λ‚˜μ„œ μ£ΌμΆ• λ°©ν–₯ μ—¬μœ  곡간을 μ±„μš°λŠ” 점만 λ‹€λ¦…λ‹ˆλ‹€.

flex: none으둜 μ§€μ •ν•˜λ©΄ flex: 0 0 auto으둜 μ§€μ •ν•œ 것과 λ™μΌν•˜λ©° flex μ»¨ν…Œμ΄λ„ˆμ˜ 크기 변화에도 flex ν•­λͺ© ν¬κΈ°λŠ” λ³€ν•˜μ§€ μ•Šκ³  flex-basisλ₯Ό auto둜 μ§€μ •ν–ˆμ„ λ•Œ μ •ν•΄μ§€λŠ” 크기둜 κ²°μ •λ©λ‹ˆλ‹€.

이 μΆ•μ•½ν˜•μ€ 더 μΆ•μ•½ν•΄μ„œ flex: 1 μ΄λ‚˜ flex: 2처럼 μ“Έμˆ˜λ„ μžˆλŠ”λ°, μ΄λŠ” flex-grow 만 μ§€μ •ν•˜κ³  λ‚˜λ¨Έμ§€λŠ” 1 0으둜 μ‚¬μš©ν•œλ‹€λŠ” λœ»μ΄λ‹€. λ”°λΌμ„œ flex: 2λŠ” flex: 2 1 0와 λ™μΌν•˜κ²Œ μ²˜λ¦¬λ©λ‹ˆλ‹€.

λ‹€μŒ 라이브 μ˜ˆμ œμ—μ„œ 이 μΆ•μ•½ 값듀을 μ‹œν—˜ν•΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

μ •λ ¬, 끝 λ§žμΆ”κΈ°(justification), flex ν•­λͺ©κ°„ μ—¬μœ  곡간 λΆ„λ°°

flexbox의 μ£Ό κΈ°λŠ₯ 쀑 ν•˜λ‚˜λŠ” (μ£ΌμΆ•κ³Ό κ΅μ°¨μΆ•μœΌλ‘œ ν‘œν˜„λ˜λŠ”) flex μ»¨ν…Œμ΄λ„ˆ 곡간 μ•ˆμ— flex ν•­λͺ©λ“€μ„ μ •λ ¬ν•˜κ³  끝 λ§ˆμΆ”λ©° μ—¬μœ  곡간을 ν•­λͺ© 간에 λΆ„λ°°ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

μ—­μ£Ό) 이 절의 λ‚΄μš©μ€ νŽΈμ˜μƒ flex μ»¨ν…Œμ΄λ„ˆμ˜ flex-directionλ₯Ό row둜 κ°€μ •ν•˜κ³  'ν–‰'κ³Ό 'μ—΄'둜 ν‘œκΈ°ν–ˆμŠ΅λ‹ˆλ‹€.

align-items

align-itemsλŠ” flex μ»¨ν…Œμ΄λ„ˆμ— μ§€μ •ν•˜λŠ” 속성이며, ꡐ차좕을 따라 flex ν•­λͺ© 열을 μ •λ ¬ν•˜λŠ” 방식을 μ§€μ •ν•©λ‹ˆλ‹€.

이 μ†μ„±μ˜ (아무것도 μ§€μ •ν•˜μ§€ μ•Šμ•˜μ„ λ•Œ μ μš©λ˜λŠ”)초기 값은 stretch이며 이 값을 μ§€μ •ν•˜λ©΄ flex ν•­λͺ©μ˜ λ†’μ΄λŠ” flex μ»¨ν…Œμ΄λ„ˆ λ‚΄ flex ν•­λͺ© ν–‰μ˜ μ΅œλŒ€ λ†’μ΄λ‘œ μ§€μ •λ©λ‹ˆλ‹€. λ”°λΌμ„œ, flex ν•­λͺ© 행이 ν•˜λ‚˜ 일 λ•ŒλŠ” flex ν•­λͺ©μ€ ꡐ차좕 λ°©ν–₯으둜 flex μ»¨ν…Œμ΄λ„ˆλ₯Ό 가득 μ±„μš°κ²Œ λ©λ‹ˆλ‹€.

이 속성을 flex-start둜 μ§€μ •ν•˜λ©΄ flex ν•­λͺ©μ˜ 첫 열이 ꡐ차좕 λ°©ν–₯의 μ‹œμž‘μ„ μ— μ •λ ¬λ©λ‹ˆλ‹€. flex-end둜 μ§€μ •ν•˜λ©΄ flex ν•­λͺ©μ˜ 첫 열이 ꡐ차좕 λ°©ν–₯의 끝선에 μ •λ ¬λ©λ‹ˆλ‹€. center둜 μ§€μ •ν•˜λ©΄ flex ν•­λͺ© 행에 λ°°λΆ„λœ κ³΅κ°„μ˜ κ°€μš΄λ° 라인에 μ •λ ¬λ©λ‹ˆλ‹€.

λ‹€μŒ 라이브 μ˜ˆμ œμ—μ„œ 이 값듀을 μ‹œν—˜ν•΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. - 이 μ‹œν—˜μ„ μœ„ν•΄ μ˜λ„μ μœΌλ‘œ flex μ»¨ν…Œμ΄λ„ˆμ— 높이λ₯Ό μ§€μ •ν•΄ λ‘μ—ˆμŠ΅λ‹ˆλ‹€.

  • stretch
  • flex-start
  • flex-end
  • center

justify-content

justify-content 속성은 주좕을 따라 flex ν•­λͺ© 행을 μ •λ ¬ν•˜λŠ” 방식을 μ§€μ •ν•©λ‹ˆλ‹€.

이 μ†μ„±μ˜ (아무것도 μ§€μ •ν•˜μ§€ μ•Šμ•˜μ„ λ•Œ μ μš©λ˜λŠ”)초기 값은 flex-start이며 이 값을 μ§€μ •ν•˜λ©΄ flex ν•­λͺ© ν–‰ λ‚΄μ˜ ν•­λͺ©λ“€μ€ flex μ»¨ν…Œμ΄λ„ˆμ˜ μ‹œμž‘μ„ μ—μ„œ λΆ€ν„° μ •λ ¬λ©λ‹ˆλ‹€. flex-end둜 μ§€μ •ν•˜λ©΄ flex ν•­λͺ© ν–‰μ˜ λ§ˆμ§€λ§‰ ν•­λͺ©μ΄ flex μ»¨ν…Œμ΄λ„ˆμ˜ λμ„ μ—μ„œ μ •λ ¬λ©λ‹ˆλ‹€. center둜 μ§€μ •ν•˜λ©΄ flex ν•­λͺ©λ“€μ΄ flex ν•­λͺ© ν–‰μ˜ κ°€μš΄λ° μ •λ ¬λ©λ‹ˆλ‹€.

space-between을 μ§€μ •ν•˜λ©΄ μ£ΌμΆ• λ°©ν–₯ μ—¬μœ  곡간을 flex ν•­λͺ© μ‚¬μ΄μ˜ 곡간에 κ· λ“± λ°°λΆ„ν•©λ‹ˆλ‹€.

space-aroundλŠ” μ‹œμž‘μ„  및 끝선과 flex ν•­λͺ©κ°„ 곡간도 κ· λ“± 배뢄에 κ³ λ €ν•˜λ―€λ‘œ μ‹œμž‘μ„  및 끝선과 flex ν•­λͺ© κ°„μ˜ κ³΅κ°„μ˜ 크기λ₯Ό 1둜 λ°°λΆ„ν•œλ‹€λ©΄ flex ν•­λͺ© μ‚¬μ΄μ˜ 곡간은 2둜 λ°°λΆ„ν•©λ‹ˆλ‹€.

space-evenly둜 μ§€μ •ν•˜λ©΄ μ—¬μœ  곡간을 flex ν•­λͺ© μ‚¬μ΄μ˜ 곡간 및 μ‹œμž‘μ„  및 끝선과 flex ν•­λͺ© κ°„μ˜ 곡간에 λͺ¨λ‘ κ· λ“±ν•˜κ²Œ λ°°λΆ„ν•©λ‹ˆλ‹€.

λ‹€μŒ 라이브 μ˜ˆμ œμ—μ„œ justify-content에 μ§€μ •ν•  수 μžˆλŠ” λ‹€μŒ 값듀을 μ‹œν—˜ν•΄ λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.

  • stretch
  • flex-start
  • flex-end
  • center
  • space-around
  • space-between
  • space-evenly

이 μ ˆμ—μ„œ μ„€λͺ…ν•œ λ‚΄μš©μœΌλ‘œ λŒ€λΆ€λΆ„μ˜ κ²½μš°μ— λŒ€μ‘ν•  수 μžˆμ§€λ§Œ, Aligning Items in a Flex Container μ—μ„œ 이 속성듀을 더 μžμ„Ένžˆ μ‚΄νŽ΄λ³Ό κ²ƒμž…λ‹ˆλ‹€.

Next steps

Flexbox의 κ°œμš”λ₯Ό μ‚΄νŽ΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€. λ‹€μŒ κΈ€ how this specification relates to other parts of CSSμ—μ„œ 이 규격이 λ‹€λ₯Έ CSS 규격과 μ–΄λ–»κ²Œ μ—°κ΄€λ˜μ–΄ μžˆλŠ”μ§€ λ§μ”€λ“œλ¦¬κ² μŠ΅λ‹ˆλ‹€.

pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy