display: flex
Flexbox는 모던 웹을 위하여 제안된 기존 레이아웃보다 더 세련된 방식의 니즈에 부합하기 위한 CSS3의 새로운 레이아웃 방식입니다.
Flexbox에서 사용하는 속성은 부모요소와 자식요소로 나누어집니다. 전체적인 정렬이나 흐름에 관한 속성은 flex container에서 정의하고 자식 요소의 크기나 순서와 관련된 속성은 flex item에서 정의합니다. 이를 분리해서 적용하는 것이 flex-box에서 가장 중요합니다.
- flex container 속성 : flex-direction, flex-wrap, justify-content, align-items, align-content- flex item 속성 : flex, flex-grow, flex-shrink, flex-basis, order
속성 | 설명 |
---|---|
align-content | align-content 속성은 콘텐츠의 상하관계 정렬 상태를 정의합니다. |
align-items | align-items 속성은 콘텐츠 내부의 정렬 상태를 정의합니다. |
align-self | align-self 속성은 콘텐츠의 정렬 상태를 정의합니다. |
flex | flex 속성은 콘텐츠의 성질을 flex로 정의합니다. |
flex-basis | flex-basis 속성은 요소의 기본 단위를 정의합니다. |
flex-direction | flex-direction 속성은 요소의 정렬 방향을 정의합니다. |
flex-flow | flex-flow 속성은 요소의 정렬 방향과 줄 속성을 설정합니다. |
flex-grow | flex-grow 속성은 요소의 크기를 숫자를 통해 정의합니다. |
flex-shrink | flex-shrink 속성은 요소의 크기를 숫자를 통해 줄여줍니다. |
flex-wrap | flex-wrap 속성은 요소의 줄 속성을 설정합니다. |
justify-content | justify-content 속성은 콘텐츠의 좌우 관계 정렬 상태를 정의합니다. |
justify-items | justify-items 속성은 콘텐츠의 좌우 관계 정렬 상태를 정의합니다. |
justify-self | justify-self 속성은 콘텐츠의 좌우 관계 정렬 상태를 정의합니다. |
place-content | place-content 속성은 콘텐츠의 좌우 관계 정렬 상태를 정의합니다. |
place-items | place-items 속성은 콘텐츠의 좌우 관계 정렬 상태를 정의합니다. |
place-self | place-self 속성은 콘텐츠의 좌우 관계 정렬 상태를 정의합니다. |
order | order 속성은 flex 콘텐츠의 순서를 정의합니다. |
align-content
align-content 속성은 콘텐츠의 상하관계 정렬 상태를 정의합니다.
justify-content
justify-content 속성은 콘텐츠의 상하관계 정렬 상태를 정의합니다.
flex-direction
flex-direction 속성은 콘텐츠의 정렬 방향을 정의합니다.
flex-basis
flex-basic 속성은 요소의 기본 크기를 정의합니다.
flex-grow
flex-grow 속성은 요소의 크기를 숫자를 통해 확대합니다.
flex-shrink
flex-shrink 속성은 요소의 크기를 숫자를 통해 줄여줍니다.
flex-wrap
flex-shrink 속성은 요소의 줄 속성을 정의합니다.
flex
flex 속성은 flex-grow, flex-shrink, flex-basis 속성을 정의합니다.
* 단위가 없는 속성 한개만 사용한 경우 : flex-grow
flex: 2
* 단위가 있는 속성을 한개만 사용한 경우 : flex-basis
flex: 100px
* 단위가 없는 속성 두개를 사용한 경우 : flex-glow | flex-shrink
flex: 2 2;
* flex-glow | flex-basis
flex: 2 200px
* flex-grow | flex-shrink | flex-basis
flex: 2 2 100px
align-items
align-items 속성은 콘텐츠 내부의 정렬 상태를 정의합니다.
align-items
1
2
2
3
3
3
4
4
4
4
5
5
5
5
5
6
6
6
6
6
6
7
7
7
7
7
8
8
8
8
9
9
9
10
10
11
justify-items
justify-items 속성은 콘텐츠 내부의 정렬 상태를 정의합니다.
align-items
1
2 2
3 3 3
4 4 4 4
5 5 5 5 5
6 6 6 6 6 6
7 7 7 7 7 7 7
8 8 8 8 8 8
9 9 9 9 9
10 10 10 10
11 11 11
Sample01
Sample01
.sFlex1 {display: flex; justify-content: space-between;}
.sItem1 {flex: 0 0 100px;}
Sample02
Sample02
.sFlex3 {display: flex;}
.sItem3 {
flex-basis: 100px;
}
.sItem3 + .sItem3 {
margin-left: 2%;
}
.sItem3:last-child {
margin-left: auto;
}
Sample03
Sample03
.sFlex3 {display: flex;}
.sItem3 {
flex-basis: 100px;
}
.sItem3 + .sItem3 {
margin-left: 2%;
}
.sItem3:last-child {
margin-left: auto;
}
Sample03
Sample03
.sFlex4 {display: flex;}
.sItem4 {
flex-basis: 100px;
}
.sItem4 + .sItem4 {
margin-left: 2%;
}
.sItem4:nth-child(2){
margin-left: auto;
flex-basis: 300px;
}
.sItem4:last-child {
margin-left: auto;
}