플렉스 레이아웃(flex layout)에서 플렉스 컨테이너(flex container)에 존재하는 레이아웃 항목에 대하여 교차축(cross axis) 방향으로 정렬을 설정한다. 그리드 레이아웃(grid layout)에서 로우축(row axis) 그리드 트랙(grid track)에 존재하는 레이아웃 항목에 대하여 컬럼축(column axis) 방향으로 정렬을 설정한다.
다중 라인 플렉스 컨테이너에서 align-items
속성은 align-content
속성과 동일한 결과를 가져오는 것 같지만 align-items
속성은 각 레이아웃 항목의 콘텐츠 크기를 기준으로 한다는 것이 차이점이다. stretch
가 아닌 경우 각 레이아웃 항목은 콘텐츠 만큼의 공간을 가지게 된다.
align-items
속성은 align-content
속성의 모든 키워드를 값으로 사용할 수 없음을 주의한다.
align-items
속성은 align-content
속성과 다르게 단일 라인에서도 사용이 가능하다.Flex Layout | Grid Layout |
normal | stretch | <baseline-position> | [ <overflow-position>? <self-position> ]
아래 유형에서 지원하는 모든 키워드와 단위를 사용하지 않을 수도 있다.
기준선 정렬은 정렬 기준선을 일치시켜 공유 정렬 컨텍스트 내에서 여러 정렬 대상을 정렬한다.
[ first | last ]? && baseline
first
와 last
는 상자에 기본 정렬 기본 설정을 한다. 기본 값은 first
이다.
첫번째 기준선으로 계산한다. first baseline
과 동일하다.
첫번째 기준선 정렬에 맞춘다.
마지막 기준선으로 정렬되도록 한다.
정렬 대상이 정렬 컨테이너보다 큰 경우에는 오버플로우가 되므로 일부 정렬 모드에서는 콘텐츠가 표시되지 않을 수 있다. 이 상황을 제어하기 위해 오버플로우 정렬 모드를 사용한다.
[ unsafe | safe ]? <content-position>
unsafe
는 오버플로우가 되는 상황에서 콘텐츠 유실이 있더라도 지정된 정렬 모드를 준수한다. safe
는 오버플로우가 되는 상황에서 콘텐츠 유실을 방지하기 위해 정렬 모드를 변경한다.
정렬 대상의 전체 영역의 크기가 정렬 컨테이너 안에서 수용할 수 없으면 정렬 대상이 start 정렬 모드가 시작된 것 처럼 배치된다.
정렬 대상과 정렬 컨테이너의 상대적 크기에 관계없이 지정된 정렬 값이 적용된다.
justify-self
, align-self
속성에서 사용되며 justify-items
, align-items
에서도 사용된다.
center | start | end | self-start | self-end | flex-start | flex-end
정렬 컨테이너 내에서 정렬 대상들을 가운데 배치한다.
적절한 축에서 정렬 컨테이너의 끝 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
플렉스(flex) 레이아웃에서만 사용된다. 필요에 따라 플렉스 컨테이너의 기본 끝 또는 교차 끝 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
플렉스(flex) 레이아웃에서만 사용된다. 플렉스 컨테이너의 기본 시작 또는 교차 시작 측면에서 해당하는 정렬 컨텐이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
적절한 축에서 정렬 대상의 끝면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
적절한 축에서 정렬 대상의 시작 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
적절한 축에서 정렬 컨테이너의 시작 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
기본 위치로 설정한다.
정렬 대상의 계산된 너비/높이(축에 적합한)가 자동이고 여백이 모두 자동인 경우 정렬 대상의 사용된 크기를 min-height/min-width/max-height/max-width로 부과되는 구속 조건을 유지하면서 가능한 정렬 컨테이너를 채우는데 필요한 길이로 설정된다.
다음은 필요에 따라 일부 값을 설명하므로 표시되지 않는 값은 값 유형을 참조하라.
기본 위치로 설정한다.
stretch
로 처리된다.
종횡비 또는 start
값 처럼 동작하는 고유 크기가 있는 그리드 항목을 제외하고는 stretch
처럼 동작한다.
정렬 대상의 계산된 너비/높이(축에 적합한)가 자동이고 여백이 모두 자동인 경우 정렬 대상의 사용된 크기를 min-height/min-width/max-height/max-width로 부과되는 구속 조건을 유지하면서 가능한 정렬 컨테이너를 채우는데 필요한 길이로 설정된다.
플렉스 컨테이너(flex container) 안의 레이아웃 항목을 교차축(cross axis) 방향으로 늘려서 공간을 채운다.
grid-auto-rows
또는 grid-template-rows
의 크기가 auto
인 경우 로우축(row axis) 그리드 트랙(grid track)상의 레이아웃 항목을 컬럼축(column axis) 방향으로 늘려서 공간을 채운다.
플렉스(flex) 레이아웃에서만 사용된다. 플렉스 컨테이너의 기본 시작 또는 교차 시작 측면에서 해당하는 정렬 컨텐이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
플렉스 컨테이너(flex container) 안의 레이아웃 항목을 교차축(cross axis) 방향으로 플렉스 컨테이너(flex container)의 콘텐츠 시작 위치에 맞춘다.
로우축(row axis) 그리드 트랙(grid track)상의 레이아웃 항목을 컬럼축(column axis) 방향으로 그리드 트랙(grid track)에서 콘텐츠가 시작되는 위치에 맞춘다.
플렉스(flex) 레이아웃에서만 사용된다. 필요에 따라 플렉스 컨테이너의 기본 끝 또는 교차 끝 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
플렉스 컨테이너(flex container) 안의 레이아웃 항목을 교차축(cross axis) 방향으로 플렉스 컨테이너(flex container)의 콘텐츠가 끝나는 위치에 맞춘다.
로우축(row axis) 그리드 트랙(grid track)상의 레이아웃 항목을 컬럼축(column axis) 방향으로 그리드 트랙(grid track)에서 콘텐츠가 끝나는 위치에 맞춘다.
적절한 축에서 정렬 컨테이너의 시작 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
로우축(row axis) 그리드 트랙(grid track)의 레이아웃 항목을 컬럼축(column axis) 방향에서 콘텐츠가 시작되는 위치에 맞춘다.
정렬 컨테이너 내에서 정렬 대상들을 가운데 배치한다.
플렉스 컨테이너(flex container)의 레이아웃 항목들을 교차축(cross axis) 방향으로 플렉스 컨테이너(flex container) 가운데에 배치한다.
로우축(row axis) 그리드 트랙(grid track)내의 레이아웃 항목을 컬럼축(column axis) 방향으로 그리드 트랙(grid track)의 가운데에 배치한다.
적절한 축에서 정렬 컨테이너의 끝 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
로우축(row axis) 그리드 트랙(grid track)의 레이아웃 항목을 컬럼축(column axis) 방향에서 콘텐츠가 끝나는 위치에 맞춘다.
적절한 축에서 정렬 대상의 시작 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
적절한 축에서 정렬 대상의 끝면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.
첫번째 기준선으로 계산한다. first baseline
과 동일하다.
부모 요소의 기준 행에 위치, flex-start와 동일 결과
정렬 대상의 전체 영역의 크기가 정렬 컨테이너 안에서 수용할 수 없으면 정렬 대상이 start 정렬 모드가 시작된 것 처럼 배치된다.
정렬 대상과 정렬 컨테이너의 상대적 크기에 관계없이 지정된 정렬 값이 적용된다.
align-items: center;
object.style.alignItems = "center";
Modules | ||
---|---|---|
Module Name | Status | Summary |
CSS Box Alignment Module Level 3 | Last review date: 2022-6-26 | |
Flexible Box Layout Module Level 1 | 추천 후보 | Last review date: 2022-6-16 |
align-content
속성과 align-items
속성은 같아 보일 수 있겠지만 분명히 다르다. 다음 아래의 샘플 코드를 참고하라.