Post

Display Flex

사이트

[컨테이너]

@container

Flex의 영향을 받는 전체 공간
노란색 배경의 컨테이너

1
2
3
.container {
  display: flex;
}

image

배치 방향 flex-direction

1
2
3
4
5
6
.container {
  flex-direction: row;
  flex-direction: row-reverse;
  flex-direction: column;
  flex-direction: column-reverse;
}

image


여러줄 처리 flex-wrap

1
2
3
4
5
.container {
  flex-wrap: nowrap;
  flex-wrap: wrap;
  flex-wrap: wrap-reverse;
}

image


메인축 방향 정렬 flex-wrap

1
2
3
4
5
6
7
8
.container {
  justify-content: flex-start;
  justify-content: flex-end;
  justify-content: center;
  justify-content: space-between;
  justify-content: space-around;
  justify-content: space-evenly;
}

1. flex-start (기본값)

아이템들을 시작점을 기준으로 정렬 image

2. flex-end

아이템들을 끝점을 기준으로 정렬

image

3. center

아이템들을 가운데로 정렬

image

4. space-between

아이템들을 균일한 간격으로 정렬

image

5. space-around

아이템들의 주위를 균일한 간격으로 정렬

image

space-evenly

아이템들의 사이와 양끝에 균일한 간격을 만들어 정렬 (IE와 Edge에서는 지원X)

image


수직축 방향 정렬 align-items

1
2
3
4
5
6
7
.container {
  align-items: stretch;
  align-items: flex-start;
  align-items: flex-end;
  align-items: center;
  align-items: baseline;
}

image


Flex Item 속성

기본 크기 설정 flex-basis

1
2
3
4
5
6
7
8
.item {
  flex-basis: auto; /* 기본값 */
  flex-basis: 0;
  flex-basis: 50%;
  flex-basis: 300px;
  flex-basis: 10rem;
  flex-basis: content;
}

- width와 flex-basis의 차이

- flex-basis: 100px 미만일 경우 100px로 늘어나고, 100px 이상일 경우에는 width가 유지됨
1
2
3
.item {
  flex-basis: 100px;
}

image

- width: 100px로 고정
1
2
3
.item2 {
  width: 100px;
}

image


유연하게 늘리기 flex-grow

남은 빈 공간을 메우며 늘어남

image


유연하게 줄이기 flex-shrink

flex-basis보다 작아질 수 있는지를 결정함

1
2
3
4
.item {
  flex-shrink: 0;
  flex-shrink: 1;
}

image


수직축 정렬 align-self

1
2
3
4
5
6
7
8
.item {
  align-self: auto;
  align-self: stretch;
  align-self: flex-start;
  align-self: flex-end;
  align-self: center;
  align-self: baseline;
}

image


배치순서 order

아이템 순서 결정 (시각적으로 변경, HTML 구조는 변하지 않음)

1
2
3
4
5
6
7
8
9
#item1 {
  order: 3;
}
#item2 {
  order: 1;
}
#item3 {
  order: 2;
}

image

This post is licensed under CC BY 4.0 by the author.