Flex 아이템 한 줄 또는 여러 줄로 배열 방법 - flex-wrap

기본적으로 플렉스 컨테이너 안의 플렉스 아이템들은 한 줄로 배치됩니다. 하지만 flex-wrap 속성을 사용하면 여러 줄로 배치할 수 있습니다.
3 min read

flex-wrap

기본적으로 플렉스 컨테이너 안의 플렉스 아이템들은 한 줄로 배치됩니다. 하지만 flex-wrap 속성을 사용하면 여러 줄로 배치할 수 있습니다.

 

기본형

flex-wrap : nowrap | warp | warp-reverse
  • nowrap : 한 줄로 배열합니다.
  • warp : 여러 줄로 배열합니다.
  • warp-reverse : 여러 줄로 배열하지만 기존 방향과 반대로 배치합니다.

 

flex-wrap: nowrap

플렉스 아이템들을 한 줄로 배치하며, 기본 값입니다.

<div class="container">
  <div class="item">Item 1</div>
  <div class="item">Item 2</div>
  <div class="item">Item 3</div>
  <div class="item">Item 4</div>
</div>
.container {
  height: 400px;
  background-color: #01579b;
  display: flex;
  flex-wrap: nowrap;
}
.item:nth-child(1) {
  background-color: #ffebee;
}
.item:nth-child(2) {
  background-color: #ffcdd2;
}
.item:nth-child(3) {
  background-color: #ef9a9a;
}
.item:nth-child(4) {
  background-color: #e57373;
}

 

아이템의 가로 크기를 늘려도 한 줄에 나오도록 크기를 조정합니다.

.item {
  width: 30%;
}

flex-wrap: wrap

flex-wrap의 값을 wrap으로 정하면 아이템을 여러 줄로 배치합니다. 만약 아이템의 너비가 부모 요소의 컨테이너의 크기를 넘거가면 아이템을 다음 줄로 넘깁니다.

.container {
  height: 400px;
  background-color: #01579b;
  display: flex;
  flex-wrap: wrap;
}
.item {
  width: 30%;
}

 

flex-direction의 속성 값이 column일 때 flex-wrap의 값을 wrap으로 정하면, 오른쪽으로 넘깁니다.

.container {
  height: 400px;
  background-color: #01579b;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
}
.item {
  height: 30%;
}

 

flex-wrap: wrap-reverse

flex-wrap의 값을 wrap-reverse로 정하면, 아이템을 이전 줄로 넘깁니다.

.container {
  height: 400px;
  background-color: #01579b;
  display: flex;
  flex-wrap: wrap-reverse;
}
.item {
  width: 30%;
}

 

 

기타 CSS 참조

You may like these posts

  • align-self align-self 속성을 이용하면 특정 플렉스 아이템을 개별적으로 배치할 수 있습니다. 플렉스 컨테이너에서 아이템 전체의 배치 방법을 결정하지만 align-self 속성으로 특정 아이템의 배치 방법을 변경할 수 있습니다. 예를 들어 display:flex 속성으로 정의된 플…
  • flex-wrap 기본적으로 플렉스 컨테이너 안의 플렉스 아이템들은 한 줄로 배치됩니다. 하지만 flex-wrap 속성을 사용하면 여러 줄로 배치할 수 있습니다.   기본형 flex-wrap : nowrap | warp | warp-reverse nowrap : 한 줄로 배열합…
  • align-content flex-wrap 속성의 값이 wrap인 경우, 아이템들의 가로폭의 합이 콘테이너의 가로폭을 넘어가면 아이템이 다음 줄로 내려갑니다. 이때 여러 줄이 되어버린 아이템들의 정렬을 어떻게 할지 정하는 속성이 align-content입니다.   기본형 justif…
  • align-items align-items로 교차축(cross axis) 아이템 정렬을 정합니다. 기본값은 stretch로, 컨테이너의 높이에 맞게 늘립니다.   기본형 align-items : stretch | flex-start | flex-end | center | baselin…
  • justify-content justify-content는 flex-direction으로 정한 방향으로의 정렬을 정합니다. 예를 들어 flex-direction의 값이 row라면 가로 방향의 정렬을 정하고 flex-direction의 값이 column이라면 세로 방향의 정렬을 정합니다.   …
  • flex-direction 플렉스 컨테이너를 지정했다면 플렉스 항목을 배열할 방향을 알려주어야 합니다. flex-direction 속성을 사용해 플렉스 항목의 주축을 가로(row)로 할지, 세로(column)로 할지 지정합니다.   기본형 flex-direction : row | r…

Post a Comment