Properties

Properties

Editing
  • account_tree
  • bug_report

align-self

Flex Layout의 플렉스 컨테이너(flex container)에 존재하는 특정 레이아웃 항목에 대한 교차축(cross axis) 방향 정렬과 Grid Layout의 로우축(row axis) 그리드 트랙(grid track)에 존재하는 특정 레이아웃 항목에 대한 컬럼축(column axis) 방향의 정렬을 설정한다.

설명

기본적으로 align-items와 동일한 처리를 하지만 레이아웃 항목에게 직접 정의하여 개별적으로 위치를 잡는다.

정렬 축

Flex LayoutGrid Layout

사용 가능한 값 타입

<'align-self'>

DEVDIC-Specified Data Types

align-self 속성에 사용되는 타입이다.

  • auto | normal | stretch | <baseline-position> | <overflow-position>? <self-position>

포함된 타입

아래 유형에서 지원하는 모든 키워드와 단위를 사용하지 않을 수도 있다.

  • <baseline-position>

    기준선 정렬은 정렬 기준선을 일치시켜 공유 정렬 컨텍스트 내에서 여러 정렬 대상을 정렬한다.

    • CSS Box Alignment Module Level 3
      [ first | last ]? && baseline

      firstlast는 상자에 기본 정렬 기본 설정을 한다. 기본 값은 first이다.

    Details

    사용되는 키워드

    • baseline

      첫번째 기준선으로 계산한다. first baseline과 동일하다.

    • first baseline

      첫번째 기준선 정렬에 맞춘다.

    • last baseline

      마지막 기준선으로 정렬되도록 한다.

  • <overflow-position>

    정렬 대상이 정렬 컨테이너보다 큰 경우에는 오버플로우가 되므로 일부 정렬 모드에서는 콘텐츠가 표시되지 않을 수 있다. 이 상황을 제어하기 위해 오버플로우 정렬 모드를 사용한다.

    이 타입은 웹브라우저 지원 현황을 확인할 필요가 있다.
    • CSS Box Alignment Module Level 3
      [ unsafe | safe ]? <content-position>

      unsafe는 오버플로우가 되는 상황에서 콘텐츠 유실이 있더라도 지정된 정렬 모드를 준수한다. safe는 오버플로우가 되는 상황에서 콘텐츠 유실을 방지하기 위해 정렬 모드를 변경한다.

    Details

    사용되는 키워드

    • safe

      정렬 대상의 전체 영역의 크기가 정렬 컨테이너 안에서 수용할 수 없으면 정렬 대상이 start 정렬 모드가 시작된 것 처럼 배치된다.

    • unsafe

      정렬 대상과 정렬 컨테이너의 상대적 크기에 관계없이 지정된 정렬 값이 적용된다.

  • <self-position>

    justify-self, align-self 속성에서 사용되며 justify-items, align-items에서도 사용된다.

    • center | start | end | self-start | self-end | flex-start | flex-end
    Details

    사용되는 키워드

    • center

      정렬 컨테이너 내에서 정렬 대상들을 가운데 배치한다.

    • end

      적절한 축에서 정렬 컨테이너의 끝 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    • flex-end

      플렉스(flex) 레이아웃에서만 사용된다. 필요에 따라 플렉스 컨테이너의 기본 끝 또는 교차 끝 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    • flex-start

      플렉스(flex) 레이아웃에서만 사용된다. 플렉스 컨테이너의 기본 시작 또는 교차 시작 측면에서 해당하는 정렬 컨텐이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    • self-end

      적절한 축에서 정렬 대상의  끝면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    • self-start

      적절한 축에서 정렬 대상의 시작 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    • start

      적절한 축에서 정렬 컨테이너의 시작 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

사용되는 키워드

  • auto

    이 키워드가 사용된 속성이 align-self일 경우에 상위 컨테이너의 계산된 align-items  값으로, justify-self일 경우에 상위 컨테이너의 계산된 justify-items값으로 작동한다.

  • normal

    기본 위치로 설정한다.

  • stretch

    정렬 대상의 계산된 너비/높이(축에 적합한)가 자동이고 여백이 모두 자동인 경우 정렬 대상의 사용된 크기를 min-height/min-width/max-height/max-width로 부과되는 구속 조건을 유지하면서 가능한 정렬 컨테이너를 채우는데 필요한 길이로 설정된다.

다음은 필요에 따라 일부 값을 설명하므로 표시되지 않는 값은 값 유형을 참조하라.

  • 〈'align-self'〉auto
    CSS Box Alignment Module Level 3

    이 키워드가 사용된 속성이 align-self일 경우에 상위 컨테이너의 계산된 align-items  값으로, justify-self일 경우에 상위 컨테이너의 계산된 justify-items값으로 작동한다.

    기본 값이며 요소는 부모 컨테이너의 align-items 속성을 상속 받거나 부모 컨테이너가 없는 경우 stretch로 설정이 됩니다.

  • CSS Box Alignment Module Level 3

    기본 위치로 설정한다.

    Flex Layout

    stretch 값과 동일하다.

    Grid Layout

    레이아웃 항목이 가로 세로 비율을 갖거나 start와 같이 동작하는 고유 크기를 가진 경우를 제외하고는 stretch와 유사하다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    정렬 대상의 계산된 너비/높이(축에 적합한)가 자동이고 여백이 모두 자동인 경우 정렬 대상의 사용된 크기를 min-height/min-width/max-height/max-width로 부과되는 구속 조건을 유지하면서 가능한 정렬 컨테이너를 채우는데 필요한 길이로 설정된다.

    Flex Layout

    플렉스 컨테이너(flex container) 안의 특정 레이아웃 항목을 교차축(cross axis) 방향으로 늘려서 공간을 채운다.

    Grid Layout

    grid-auto-rows 또는 grid-template-rows의 크기가 auto인 경우 로우축(row axis) 그리드 트랙(grid track)상의 특정 레이아웃 항목을 컬럼축(column axis) 방향으로 늘려서 공간을 채운다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    플렉스(flex) 레이아웃에서만 사용된다. 플렉스 컨테이너의 기본 시작 또는 교차 시작 측면에서 해당하는 정렬 컨텐이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    Flex Layout

    플렉스 컨테이너(flex container) 안의 특정 레이아웃 항목을 교차축(cross axis) 방향으로 플렉스 컨테이너(flex container)의 콘텐츠 시작 위치에 맞춘다.

    Grid Layout

    로우축(row axis) 그리드 트랙(grid track)상의 특정 레이아웃 항목을 컬럼축(column axis) 방향으로 그리드 트랙(grid track)의 콘텐츠가 시작되는 위치에 맞춘다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    플렉스(flex) 레이아웃에서만 사용된다. 필요에 따라 플렉스 컨테이너의 기본 끝 또는 교차 끝 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    Flex Layout

    플렉스 컨테이너 안의 특정 레이아웃 항목을 교차축(cross axis) 방향으로 플렉스 컨테이너(flex container)의 콘텐츠가 끝나는 위치에 맞춘다.

    Grid Layout

    로우축(row axis) 그리드 트랙(grid track)상의 특정 레이아웃 항목을 컬럼축(column axis) 방향으로 그리드 트랙(grid track)의 콘텐츠가 끝나는 위치에 맞춘다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    적절한 축에서 정렬 컨테이너의 시작 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    Grid Layout

    로우축(row axis) 그리드 트랙(grid track)의 특정 레이아웃 항목이 컬럼축(column axis) 방향에서 콘텐츠가 시작되는 위치에 맞춘다.

    Example
  • CSS Box Alignment Module Level 3

    정렬 컨테이너 내에서 정렬 대상들을 가운데 배치한다.

    로우축(row axis) 그리드 트랙(grid track)의 특정 레이아웃 항목을 컬럼축(column axis) 방향에서 그리드 트랙(grid track)내의 가운데 위치에 맞춘다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    적절한 축에서 정렬 컨테이너의 끝 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    Grid Layout

    로우축(row axis) 그리드 트랙(grid track)의 특정 레이아웃 항목을 컬럼축(column axis) 방향에서 콘텐츠가 끝나는 위치에 맞춘다.

    Example
  • CSS Box Alignment Module Level 3

    적절한 축에서 정렬 대상의 시작 측면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    적절한 축에서 정렬 대상의  끝면에 해당하는 정렬 컨테이너의 가장자리와 같은 높이가 되도록 정렬 대상을 정렬한다.

    Example
    Example
  • CSS Box Alignment Module Level 3

    첫번째 기준선으로 계산한다. first baseline과 동일하다.

    컨테이너의 기준선에 배치된다.

  • CSS Box Alignment Module Level 3
  • CSS Box Alignment Module Level 3
  • CSS Box Alignment Module Level 3

    정렬 대상의 전체 영역의 크기가 정렬 컨테이너 안에서 수용할 수 없으면 정렬 대상이 start 정렬 모드가 시작된 것 처럼 배치된다.

  • CSS Box Alignment Module Level 3

    정렬 대상과 정렬 컨테이너의 상대적 크기에 관계없이 지정된 정렬 값이 적용된다.

구문

  • align-self: center;
    CSS Box Alignment Module Level 3
    Flex 레이아웃에서 두번째 레이아웃 항목에게 align-self 속성 값을 center로 지정할 경우에 대한 결과
  • align-self: center;
    CSS Box Alignment Module Level 3
    Grid 레이아웃에서 두번째 레이아웃 항목에게 align-self 속성 값을 end로 지정할 경우에 대한 결과

테스트 도구

(1) Flex 레이아웃일 경우 align-self 속성 값 테스트
(2) Grid 레이아웃일 경우 align-self 속성 값 테스트

버전 명세

Modules
Module NameStatusSummary
Flexible Box Layout Module Level 1추천 후보

Last review date: 2022-6-16

CSS Box Alignment Module Level 3

Last review date: 2022-6-26

지원 웹브라우저