본문 바로가기
개발 공부/웹개발

[CSS] grid 개념정리(1)

by 크롱이크 2021. 7. 27.

grid란? 

css는 레이아웃과 스타일을 정의할 때 사용되는 언어입니다.

그 중 grid(그리드) 레이아웃의 끝판 왕이라고 할 수 있다.

 

Flex는 한 방향 레이아웃 시스템이고 (1차원)

Grid는 두 방향(가로-세로) 레이아웃 시스템 (2차원)

 

Grid 용어정리

  • 그리드 컨테이너 (Grid Container) => display: grid를 적용하는, Grid의 전체 영역
  • 그리드 아이템 (Grid Item) => Grid 컨테이너의 자식 요소
  • 그리드 트랙 (Grid Track) => Grid의 행(Row) 또는 열(Column)
  • 그리드 셀 (Grid Cell) => Grid의 한 칸을 가리키는 말
  • 그리드 라인(Grid Line) => Grid 셀을 구분하는 선
  • 그리드 번호(Grid Number) => Grid 라인의 각 번호
  • 그리드 갭(Grid Gap) => Grid 셀 사이의 간격
  • 그리드 영역(Grid Area) => Grid 라인으로 둘러싸인 사각형 영역으로, 그리드 셀의 집합

 

Grid 속성

grid의 속성들은 flex와 마찬가지로 

1)컨테이너에 적용하는 속성

2)아이템에 적용하는 속성 

으로 나뉘어져 있다.

 

1.컨테이너에 적용하는 속성

 1) display: grid;    => Grid 컨테이너에 display: grid;를 적용하는게 시작

 2)grid-template-rows  =>grid-template-rows는 행(row)의 배치
 3) grid-template-columns => grid-template-columns는 열(column)의 배치

   -fr은 fraction이다. 숫자 비율대로 트랙의 크기를 나눈다.

.container {
	display:grid;
	grid-template-columns: 200px 200px 500px;
	/* grid-template-columns: 1fr 1fr 1fr */
	/* grid-template-columns: repeat(3, 1fr) */
	/* grid-template-columns: 200px 1fr */
	/* grid-template-columns: 100px 200px auto */

	grid-template-rows: 200px 200px 500px;
	/* grid-template-rows: 1fr 1fr 1fr */
	/* grid-template-rows: repeat(3, 1fr) */
	/* grid-template-rows: 200px 1fr */
	/* grid-template-rows: 100px 200px auto */
}

많이 쓰이는 함수

repeat(반복횟수, 반복값)

minmax (,) 최솟값과 최댓값을 지정할 수 있는 함수입니다.
minmax(100px, auto)의 의미는 최소한 100px최대는 자동으로(auto) 늘어나게

auto-fill과 auto-fit

auto-fill과 auto-fit은 column의 개수를 미리 정하지 않고 설정된 너비가 허용하는 한 최대한 셀

 

 

반응형

댓글