CSS grid-row: 그리드 아이템 행 배치

CSS grid-row: 그리드 아이템 행 배치

Baseline넓은 지원

모든 주요 브라우저가 지원하는 기능입니다.

CSS grid-column 단축 속성은 그리드 아이템의 블록 방향 (행) 위치와 차지할 칸의 수를 설정합니다.

.target {
  grid-row: auto;
  /* grid-row: 2; */
  /* grid-row: 2 / 4; */
  /* grid-row: 1 / span 3; */
  /* grid-row: lineB 1 / lineB 2; */
  /* grid-row: areaA; */
}
.grid {
  border: 1px dashed #999;
  color: #fff;
  display: grid;
  height: 200px;
  gap: 5px;
  grid-template: [lineA areaA-start] 1fr [lineB] 1fr [lineA areaA-end] 1fr [lineB] / repeat(3, 1fr);
  margin: 1em;
  position: relative;
  width: 200px;
}

.item {
  align-items: center;
  background: #4011c5;
  display: flex;
  font-size: 1.5rem;
  font-weight: 700;
  justify-content: center;
}

.target {
  background: #c50a4bff;
}
<div class="grid">
  <div class="item target">1</div>
  <div class="item">2</div>
  <div class="item">3</div>
  <div class="item">4</div>
  <div class="item">5</div>
  <div class="item">6</div>
</div>

불러오는 중...

구성 속성

grid-row은 다음 두 속성의 단축 속성입니다.

구문

/* 키워드 값 */
grid-row: auto;
grid-row: auto / auto;

/* <custom-ident> 값 */
grid-row: line-or-area;
grid-row: line-or-area / another-line-or-area;

/* <integer> && <custom-ident>? 값 */
grid-row: 2;
grid-row: line-or-area 3;
grid-row: line-or-area 3 / another-line-or-area;

/* span && [ <integer> || <custom-ident> ] 값 */
grid-row: span 3;
grid-row: 1 / span 3;
grid-row: line-or-area / span 2;

/* 전역 값 */
grid-row: inherit;
grid-row: initial;
grid-row: revert;
grid-row: revert-layer;
grid-row: unset;

grid-row 속성에는 한 개 또는 두 개의 <grid-line> 값을 사용합니다. 두 개 값을 사용 시 /로 구분하며, grid-row-start에 해당하는 값을 앞에, grid-row-end에 해당하는 값을 뒤에 지정합니다.

한 개 값만 사용 시, 지정한 값이 <custom-ident> 형식이면 grid-row-startgrid-row-end를 모두 그 값으로 설정합니다. 그 외의 값이면 grid-row-start만 그 값으로 설정하고, grid-row-endauto가 됩니다.

<grid-line> 값은 아래 형식 중 하나로 구성합니다.

auto

그리드 아이템이 자동으로 배치되고 1열만 차지합니다.

<custom-ident>

주어진 식별자와 같은 이름, 또는 -start/-end 접미사가 붙은 이름의 행 분할선이 존재하면, 그리드 아이템의 끝점을 해당 분할선으로 설정합니다. 예를 들어, grid-row: areaAareaA라는 이름의 분할선에서 1열, 또는 areaA-start 분할선에서 areaA-end 분할선까지의 그리드 영역에 대응합니다.

이름 있는 영역을 지정한 경우, 각 영역 이름에 대응하는 분할선이 자동으로 생성됩니다. 예컨대 foo라는 이름의 그리드 영역은 foo-startfoo-end라는 이름의 분할선을 자동으로 생성합니다. 따라서 grid-row: foo를 지정하면 foo 그리드 영역에 맞춰 배치할 수 있습니다.

일치하는 행 분할선이 존재하지 않으면 <custom-ident> 1처럼 동작합니다.

<integer> && <custom-ident>?

그리드 아이템의 시작/끝점을 n번째 행 분할선으로 설정합니다. 음수 값을 지정할 경우 명시적 그리드의 마지막 행 분할선에서부터 역순으로 셉니다. 0은 유효하지 않습니다.

<custom-ident>를 지정한 경우 그 이름을 가진 행 분할선만 셉니다. 해당 이름의 행 분할선 개수가 주어진 정수 값보다 적으면, 행 탐색 방향과 같은 쪽에 생성된 암시적 행 분할선을 이름과 무관하게 포함하여 셉니다.

span && [ <integer> || <custom-ident> ]

그리드 아이템의 시작/끝점을 끝/시작점에서 n개 분할선만큼 떨어진 곳으로 설정합니다. <integer>0과 음수 값, <custom-ident>spanauto는 유효하지 않습니다.

<custom-ident>를 지정한 경우 그 이름을 가진 행 분할선만 셉니다. 해당 이름의 행 분할선 개수가 주어진 정수 값보다 적으면, 행 탐색 방향과 같은 쪽에 생성된 암시적 행 분할선을 이름과 무관하게 포함하여 셉니다.

grid-row-startgrid-row-endspan을 함께 지정하면 grid-row-end의 값은 무시합니다.

명세

브라우저 호환성

MDN browser-compat-data
데스크톱모바일
iOSAndroid
SafariChromeFirefoxSafariSafari WebViewChromeAndroid WebViewFirefoxSamsung Internet
grid-row

같이 보기

마지막 수정:

CC BY-SA 4.0 unless otherwise noted. See LICENSE.