노마드코더에서 CSS Layout 학습을 하고 있다.
그 중 grid 개념을 즐겁게 학습할 수 있는 Grid Garden 게임을 하면서 정리를 해봤다.
https://cssgridgarden.com/#ko로 들어가면 즐길 수 있다.

<grid-column-start 속성>
그리드 요소의 시작 열(column) 위치를 지정한다.
- integer : 양수, 음수 다 설정 가능
- span integer : span은 양수만 설정 가능
grid-column-start: 3;

grid-column-start: -2;

<grid-column-end 속성>
그리드 요소의 마지막 열(column) 위치를 지정한다.
- integer : 양수, 음수 다 설정 가능
- span integer : span은 양수만 설정 가능
grid-column-end: 4;

grid-column-end: -5;

grid-column-end: -2;

grid-column-start: -3;

grid-column-end: span 2;

grid-column-end: span 5;

grid-column-start: span 3;

<grid-column 속성>
그리드 요소의 열(column) 위치를 지정한다.
grid-column : grid-column-start 값 / grid-column-end 값
span키워드도 사용이 가능하다.
grid-column: -3 / -1;

grid-column: 2 / span 3;

<grid-row-start 속성>
그리드 요소의 시작 행(row) 위치를 지정한다.
- integer : 양수, 음수 다 설정 가능
- span integer : span은 양수만 설정 가능
grid-row-start: 3;

<grid-row 속성>
그리드 요소의 행(row) 위치를 지정한다.
grid-row : grid-row-start 값 / grid-row-end 값
span키워드도 사용이 가능하다.
grid-row: 3 / -1;

grid-row: -1 / -2;
grid-column: 2;

grid-column: 2 / -1;
grid-row: 1 / -1;

<grid-area 속성>
그리드 요소의 크기와 위치를 지정한다.
grid-area : grid-row-start 값 / grid-column-start 값 / grid-row-end 값 / grid-column 값
grid-area: 1 / 2 / 4 / -1;

grid-area: 2 / 3 / 5 / -1;

<order 속성>
그리드 요소의 순서를 지정한다.
- integer : 양수, 음수 다 설정 가능
order: 1;

order: -1;

<grid-template-columns 속성>
그리드의 열(column) 크기와 명칭을 지정한다.
- length(px, em ...)
- percentage(%)
- flex
- max-content
- min-content
- minmax(min, max)
- repeat 함수 : 동일한 너비의 열(column)들을 지정할 때 사용
- fr : 사용가능한 공간을 하나로 공유하여 할당한다.
grid-template-columns: 50%;

grid-template-columns: repeat(8, 12.5%);

grid-template-columns: 100px 3em 40%;

grid-template-columns: 1fr 5fr;

grid-template-columns: 50px repeat(3, 1fr) 50px;

grid-template-columns: 75px 1.5fr 1fr;

<grid-template-rows 속성>
그리드의 행(row) 크기와 명칭을 지정한다.
- length(px, em ...)
- percentage(%)
- flex
- max-content
- min-content
- minmax(min, max)
- repeat 함수 : 동일한 너비의 행(row)들을 지정할 때 사용
- fr : 사용가능한 공간을 하나로 공유하여 할당한다.
grid-template-rows: 12.5px 12.5px 12.5px 12.5px auto;

<grid-template 속성>
그리드의 행(row)과 열(column)에 대한 크기와 명칭을 지정한다.
grid-template : grid-template-rows 값 / grid-template-columns 값
grid-template: 60% / 200px;

grid-template: auto 50px / 1fr 4fr;