FLex에 관한 정리 updated_at: 2024-12-16 03:53

CSS FLex에 관한 정리

Flex의 속성들은 [컨테이너]에 적용하는 속성 및 [아이템]에 적용하는 속성으로 크게 나눌 수 있습니다.

컨테이너에 적용하는 속성

display: flex;

.container {
  display: flex;
  /* display: inline-flex; */
}

See the Pen venobox sample2 by younghyeong ryu (@wangta69) on CodePen.

flex-direction

.container {
	flex-direction: row;
	/* flex-direction: column; */
	/* flex-direction: row-reverse; */
	/* flex-direction: column-reverse; */
}

See the Pen flex - display by younghyeong ryu (@wangta69) on CodePen.

align-items (수직축 방향 정렬)

.container {
	align-items: stretch;
	/* align-items: flex-start; */
	/* align-items: flex-end; */
	/* align-items: center; */
	/* align-items: baseline; */
}

See the Pen flex : flex-direction by younghyeong ryu (@wangta69) on CodePen.

Flex 아이템에 적용하는 속성들

flex-basis(유연한 박스의 기본 영역)

.item {
	flex-basis: auto; /* 기본값 */
	/* flex-basis: 0; */
	/* flex-basis: 50%; */
	/* flex-basis: 300px; */
	/* flex-basis: 10rem; */
	/* flex-basis: content; */
}

See the Pen flex : align-items by younghyeong ryu (@wangta69) on CodePen.

flex-grow (유연하게 늘리기)

.item {
	flex-grow: 1;
	/* flex-grow: 0; */ /* 기본값 */
}

/* 1:2:1의 비율로 세팅할 경우 */
.item:nth-child(1) { flex-grow: 1; }
.item:nth-child(2) { flex-grow: 2; }
.item:nth-child(3) { flex-grow: 1; }

grow 가 적용되면 나머지 여분에 대해서 grow 의 특정 비율만큼 넓이가 적용된다.

See the Pen flex : flex-basis by younghyeong ryu (@wangta69) on CodePen.

flex-shrink (유연하게 줄이기)

.item {
	flex-basis: 150px;
	flex-shrink: 1; /* 기본값 */
}

.item:nth-child(1) {
	flex-shrink: 0;
	width: 100px;
}
.item:nth-child(2) {
	flex-grow: 1;
}

See the Pen flex : flex-grow by younghyeong ryu (@wangta69) on CodePen.

평점을 남겨주세요
평점 : 4.5
총 투표수 : 2

질문 및 답글