안녕하세요 Devport 입니다. 이번 포스팅에서는 CSS 스타일 중 하나인 Flexible Box에 대한 사용방법에 대해서 간단하게 정리해보려고 합니다.
Flex Container
display: flex;
flex-direction (default: row)
Flex Items의 주가 되는 축을 설정합니다. 수평축 or 수직축 등..
- row: 방향으로 표시
- row-reverse: 방향으로 표시
- column: 방향으로 표시
- column-reverse: 방향으로 표시
flex-wrap (default: nowrap)
Items의 여러 묶음을 설정합니다.
- nowrap: 줄바뀜이 되지 않고 영영을 벗어날수 있음
- wrap: Items를 여러 줄로 묶음 (Item들이 컨테이너의 범위를 넘어서게 되려 할때 다음줄로 개행)
- wrap-reverse: Items를 wrap의 역 방향으로 여러 줄을 묶음
flex-flow [flex-direction: row][flex-wrap: nowrap]
flex-direction과 flex-wrap를 한번에 설정할 수 있습니다.
justify-content (↔)
메인 축을 기준으로 하여 정렬 방법을 설정합니다.
- flex-start: item들을 시작점으로 정렬 (default)
- flex-end: item들을 끝점으로 정렬
- center: item들을 가운데로 정렬
- space-between: item사이에 균등하게 간격을 넣습니다.
- space-around: item둘레에 균등하게 간격을 넣습니다.
- space-evenly: item사이와 양끝에 균등하게 간격을 넣습니다. (IE는 미지원)
align-items (↕) (default: stretch)
수직 축을 기준으로 하여 정렬 방법을 설정합니다.
- stretch: item들을 수직 방향으로 늘림
- flex-start: item들을 시작점으로 정렬
- flex-end: item들을 끝점으로 정렬
- center: item들을 가운데로 정렬
- baseline: item들을 텍스트의 baseline 기준으로 정렬
align-content (↕) (default: stretch)
flex-wrap 속성을 통해 Item이 여러 줄이고 여백이 있을 경우에 정렬됩니다.
- stretch: Container의 교차 축을 채우기 위해 item을 늘림
- flex-start: item들을 시작점으로 정렬
- flex-end: item들을 끝점으로 정렬
- center: item를 가운데로 정렬
- space-between: item사이에 균등하게 간격을 넣습니다.
- space-around: item둘레에 균등하게 간격을 넣습니다.
Flex Box
flex-basis (default: auto)
item의 기본 너비 설정, flex 아이템의 기본 크기를 설정(flex-direction이 row일땐 width, column일땐 height)
auto가 기본값이지만 width, height 단위의 수를 사용, "content" 사용시 컨텐츠의 크기로 적용됨
- auto: 가변 Item과 같은 너비
- 단위: px, em, cm 등의 단위로 지정
flex-grow (default: 0)
item의 증가 너비 비율을 설정, 숫자가 커지면 증가시에 더 많은 너비가 증가합니다. 0일 경우 증가 하지 않습니다.
- 숫자: item의 증가 너비 비율을 설정
flex-shrink (default: 1)
item의 감소 너비 비율을 설정, 숫자가 커지면 더 많은 너비가 감소합니다. 0일 경우 감소 하지 않습니다.
flex-basis의 값의 이하일 경우에 실행되며 0값일 경우 감소 하지 않아 고정되게 됩니다.
- 숫자: item의 감소 너비 비율을 설정
flex [flex-grow: 0] [flex-shrink: 1] [flex-basis: auto]
item의 기본, 증가, 감소에 대한 너비를 설정하는 속성입니다.
align-self (default: auto)
교차 축에서 개별 Item의 정렬 방법을 설정합니다.
- auto: Container의 align-items 속성을 상속
- stretch: Container의 교차 축을 채우기 위해 item을 늘림
- flex-start: item을 시작점으로 정렬
- flex-end: item을 끝점으로 정렬
- center: item을 가운데로 정렬
- baseline: item들을 텍스트의 baseline 기준으로 정렬
'개발바닥 > FrontEnd' 카테고리의 다른 글
Nunjucks에 대해 알아보자. (0) | 2021.11.05 |
---|---|
E2E 테스트 프레임 워크 - Playwright_번역본 (0) | 2021.10.28 |
[개발] Chrome 비밀번호 변경 팝업이 뜨는 이유 (0) | 2020.12.21 |
[개발] Chrome 자동완성을 막아보자 (0) | 2020.12.19 |
[개발] Frontend에서 Cors 해결방법 (0) | 2020.12.14 |