Search

flex

대분류
언어
소분류
CSS
설명
복잡한 계산 없이 요소의 크기와 순서를 유연하게 배치할 수 있는 레이아웃 방식
유형
구조
속성
주요 레퍼런스
https://d2.naver.com/helloworld/8540176
https://www.heropy.dev/p/Ha29GI
https://studiomeal.com/archives/197
최종 편집 일시
2024/10/30 02:13
생성 일시
2024/02/15 06:21
13 more properties

flexbox

복잡한 계산 없이 요소의 크기와 순서를 유연하게 배치할 수 있는 레이아웃 방식 부모 요소인 flex container과 자식 요소인 flex item으로 구성되어 있다.

flex containers

속성
설명
display
Flex Container를 정의
flex-flow
flex-direction와 flex-wrap의 단축 속성
flex-direction
Flex Items의 주 축(Main Axis)을 설정
flex-wrap
Flex Items의 여러 줄 묶음(줄 바꿈) 설정
justify-content
주 축(Main Axis)의 정렬 방법을 설정
align-content
교차 축(Cross Axis)의 정렬 방법을 설정(2줄 이상)
align-items
교차 축(Cross Axis)에서 Items의 정렬 방법을 설정(1줄)
gap
각 아이템 사이의 간격을 설정

display

설명
Container의 성향을 결정하는 속성
속성값
속성값
설명
flex
Block 특성의 Flex Container
inline-flex
Inline 특성의 Flex Container
flex : container의 수직 쌓임
inline-flex : container의 수평 쌓임

flex-flow

설명
Flex Items의 주 축(main-axis)을 설정하고 Items의 여러 줄 묶음(줄 바꿈)도 설정하는 단축 속성
속성값
속성값
설명
flex-direction
Items의 주 축(main-axis)을 설정
flex-wrap
Items의 여러 줄 묶음(줄 바꿈) 설정

flex-direction

설명
Flex Items의 주 축(main-axis)을 설정
속성값
속성값
설명
row
Itmes를 수평축(왼쪽에서 오른쪽으로)으로 표시
row-reverse
Items를 row의 반대 축으로 표시
column
Items를 수직축(위에서 아래로)으로 표시
column-reverse
Items를 column의 반대 축으로 표시

flex-wrap

설명

Items의 여러 줄 묶음(줄 바꿈)을 설정

속성값

속성값
설명
nowrap
모든 Itmes를 여러 줄로 묶지 않음(한 줄에 표시)
wrap
Items를 여러 줄로 묶음
wrap-reverse
Items를 wrap의 역 방향으로 여러 줄로 묶음

justify-content

설명

주 축(main-axis)의 정렬 방법을 설정

속성값

속성값
설명
flex-start(start)
Items를 시작점으로 정렬
flex-end(end)
Items를 끝점으로 정렬
center
Items를 가운데 정렬
space-around
각 Item 좌우 여백을 고르게 정렬
space-between
첫 Item은 시작점에, 끝 Item은 끝점에 정렬되고 나머지 여백으로 고르게 정렬
space-evenly
모든 여백을 고르게 정렬

align-content

설명

flex-wrap 속성을 통해 Items가 여러 줄(2줄 이상)이고 여백이 있을 경우만 사용 가능 교차 축(cross-axis)의 정렬 방법을 설정

속성값

속성값
설명
stretch
Container의 교차 축을 채우기 위해 Items를 늘림
flex-start(start)
Items를 시작점으로 정렬
flex-end(end)
Items를 끝점으로 정렬
center
Items를 가운데 정렬
space-around
각 Item 좌우 여백을 고르게 정렬
space-between
첫 Item은 시작점에, 끝 Item은 끝점에 정렬되고 나머지 여백으로 고르게 정렬
space-evenly
모든 여백을 고르게 정렬

align-items

설명

Items가 한 줄일 경우 많이 사용 Items가 flex-wrap을 통해 여러 줄(2줄 이상)일 경우에는 align-content 속성이 우선 align-items를 사용하려면 align-content 속성을 기본값(stretch)으로 설정

속성값

속성값
설명
stretch
Container의 교차 축을 채우기 위해 Items를 늘림
flex-start(start)
Items를 각 줄의 시작점으로 정렬
flex-end(end)
Items를 각 줄의 끝점으로 정렬
center
Items를 각 줄의 가운데 정렬
baseline
Items를 문자 기준선에 정렬

gap

설명

각 아이템 사이의 간격을 설정

속성값

속성값
설명
단위: number
px, em, cm 등 단위로 지정

Flex Items

속성
의미
order
Flex Item의 순서를 설정
flex
flex-growflex-shrinkflex-basis의 단축 속성
flex-grow
Flex Item의 증가 너비 비율을 설정
flex-shrink
Flex Item의 감소 너비 비율을 설정
flex-basis
Flex Item의 (공간 배분 전) 기본 너비 설정
align-self
교차 축(cross-axis)에서 Item의 정렬 방법을 설정

order

설명

Item의 순서를 설정 Item에 숫자를 지정하고 숫자가 클수록 순서가 밀림

속성값

속성값
설명
단위: number
Item의 순서를 설정

flex

설명

Item의 너비(증가, 감소, 기본)를 설정하는 단축 속성

속성값

속성값
설명
flex-grow(number)
Item의 증가 너비 비율을 설정
flex-shrink(number)
Item의 감소 너비 비율을 설정
flex-basis(number)
Item의 (공간 배분 전) 기본 너비 설정

flex-grow

설명

Item의 증가 너비 비율을 설정 숫자가 크면 더 많은 너비 소유 Item이 가변 너비가 아니거나, 값이 0일 경우 효과가 없음

속성값

속성값
설명
단위: number
Item의 증가 너비 비율 설정

flex-shrink

설명

Item이 감소하는 너비의 비율을 설정 숫자가 크면 더 많은 너비가 감소 Item이 가변 너비가 아니거나, 값이 0일 경우 효과가 없음

속성값

속성값
설명
단위: number
Item의 증가 너비 비율 설정