지난 시리즈에서 간단하게 다뤘지만, flexbox가 뭔지 다시 한 번 짚고 넘어가자.
CSS flexbox
기존의 float, position 등의 속성을 사용해서 HTML 요소의 배치, 정렬, 방향, 크기 등을 조절하는 대신, 좀 더 쉽고 효율적으로 조절할 수 있는 방법을 지원하는 CSS3 레이아웃 제작 방식이다. 특히 반응형 레이아웃을 만들기 쉽다.
오늘은 Flex의 부모요소에 쓰는 속성을 정리하려고 한다.
display : flex;
를 써줘야한다.justify-content : center
: 여러개의 자식요소가 좌우 간격 없이 수평 중앙 정렬justify-content : flex-start
(default) : 여러개의 자식요소가 부모요소의 수평 좌측으로 정렬 justify-content : flex-end
: 여러개의 자식요소가 부모요소의 수평 우측으로 정렬justify-content : space-around
: 여러개의 자식요소끼리 좌우 간격을 일정하게 배분하여 수평 중앙에 정렬justify-content : space-between
: 여러개의 자식요소를 부모요소의 좌우 여백 없이 꽉 채우면서 중앙에 배치align-items : center
: 여러개의 자식요소가 좌우 간격 없이 수직 중앙 정렬align-items : stretch
(default) : 자식요소에 높이값이 없으면 부모요소의 높이 값에 맞게 자동으로 100% 가득 채움 align-items : flex-start
: 여러개의 자식요소가 부모요소의 수직 상단으로 정렬align-items : flex-end
: 여러개의 자식요소가 부모요소의 수직 하단으로 정렬align-items : space-around
: 여러개의 자식요소끼리 상하 간격을 일정하게 배분하여 수직 중앙에 정렬align-items : space-between
: 여러개의 자식요소를 부모요소의 상하 여백 없이 꽉 채우면서 수직 중앙에 배치flex-wrap : nowrap
(default) : 부모요소가 줄어들 때 자식요소의 wrap(줄바꿈) 없이 자식요소의 너비값을 줄임flex-wrap : wrap
: 부모요소가 줄어들 때 자식요소의 너비를 줄이지 않으면서 줄바꿈을 시킴flex-flow : row nowrap
이와 같이 앞에 direction을 뒤에 wrap속성을 쓴다.부모요소에 wrap 속성이 있는 경우 부모요소가 줄어들면 자식요소가 너비를 유지하면서 줄바꿈을 하게 되는데, 그때 어떤 형태로 줄바꿈을 시킬 것인지 설정하는 속성이다.
align-items와 원리가 완전 똑같다.
align-content : center
: 여러개의 자식요소가 좌우 간격 없이 수직 중앙 정렬align-content : stretch
(default) : 자식요소에 높이값이 없으면 부모요소의 높이 값에 맞게 자동으로 100% 가득 채움 align-content : flex-start
: 여러개의 자식요소가 부모요소의 수직 상단으로 정렬align-content : flex-end
: 여러개의 자식요소가 부모요소의 수직 하단으로 정렬align-content : space-around
: 여러개의 자식요소끼리 상하 간격을 일정하게 배분하여 수직 중앙에 정렬align-content : space-between
: 여러개의 자식요소를 부모요소의 상하 여백 없이 꽉 채우면서 수직 중앙에 배치
잘 봤습니다. 직접 작성하신 글인가요?