• 회원가입
  • 로그인
  • 구글아이디로 로그인

[grid] CSS - grid 속성(C) - 그리드 레이아웃 단축속성 (= grid속성 = 그리드속성)

목차
  1. grid 예제 - 직접 지정 방식
  2. grid 정의
  3. grid 구문
  4. grid 예제 - 영역 이름 사용 방식
  5. grid 예제 - 3단 레이아웃 짜기

 

grid 예제 - 직접 지정 방식

 

<style>

.grid-box {

  display: grid;

  grid: 150px / auto auto auto;

  grid-gap: 10px;

  background-color: pink;

  padding: 10px;

}


.grid-box > div {

  background-color: rgba(255, 255, 255, 0.8);

  text-align: center;

  padding: 10px 0;

  font-size: 30px;

}

</style>


<div class="grid-box">

  <div class="a">a</div>

  <div class="b">b</div>

  <div class="c">c</div>  

  <div class="d">d</div>

  <div class="e">e</div>

  <div class="f">f</div>

</div>

 

결과보기


PS. 1,2행 모두 150px로 설정하려면 아래 속성값 사용.

grid: 150px 150px / auto auto auto;

 


grid 정의

 

아래 그리드 속성들을 일괄 지정 가능한 단축속성.

 


 

1.

  • 기본값: none none none auto auto row
  • 상속여부: X
  • 애니가능: O
  • CSS버전: CSS Grid Layout Module Level 1
  • JS구문: object.style.grid="300px / auto auto auto";

 

2.

주요 최신 브라우저 모두 지원. (IE는 10이상 부분 지원)

 

3. MDN grid 예제보기

https://developer.mozilla.org/en-US/docs/Web/CSS/grid

 

 

grid 구문

 

selector {grid: none|grid-template-rows / grid-template-columns|grid-template-areas|grid-template-rows / [grid-auto-flow] grid-auto-columns|[grid-auto-flow] grid-auto-rows / grid-template-columns|initial|inherit;}

 


[속성값]

 

none

'행 또는 열'의 크기 지정 X (기본값) 

 

grid-template-rows / grid-template-columns

행 높이 개별 지정 / 열 개수와 너비 개별 지정

 

grid-template-areas

명명된 아이템 사용해 영역 지정.

 

grid-template-rows / grid-auto-columns

행 높이 개별 지정 / 열 너비 일괄 지정

 

grid-auto-rows / grid-template-columns

행 높이 일괄 지정 / 컬럼 개수와 너비 개별 지정

 

grid-template-rows / [grid-auto-flowgrid-auto-columns

행 개수와 너비 개별 지정 / [컨테이너 채우는 방식] 열 너비 일괄

  • 주의: [] 기호는 선택사항 표시일 뿐, 실제로 표기하진 않음.

 

[grid-auto-flowgrid-auto-rows / grid-template-columns

[컨테이너 채우는 방식] 행 높이 일괄 / 컬럼 개수와 너비 개별 지정.

  • 주의: [] 기호는 선택사항 표시일 뿐, 실제로 표기하진 않음.

 

initial

이 속성의 기본값 사용.

 

inherit

부모요소의 속성값 상속. 

 

 

grid 예제 - 영역 이름 사용 방식

 

<style>

.a {

  grid-area: hz;

}


.grid-box {

  display: grid;

  grid:

  'hz hz . . .'

  'hz hz . . .';

  grid-gap: 10px;

  background-color: pink;

  padding: 10px;

}


.grid-box > div {

  background-color: rgba(255, 255, 255, 0.8);

  text-align: center;

  padding: 10px 0;

  font-size: 30px;

}

</style>


<div class="grid-box">

  <div class="a">a</div>

  <div class="b">b</div>

  <div class="c">c</div>  

  <div class="d">d</div>

  <div class="e">e</div>

  <div class="f">f</div>

  <div class="g">g</div>

  <div class="h">h</div>

  <div class="i">i</div>  

  <div class="j">j</div>

  <div class="k">k</div>

  <div class="l">l</div>  

</div>

 

 

grid 예제 - 3단 레이아웃 짜기

 

<style>

.a { grid-area: header; }

.b { grid-area: left; }

.c { grid-area: main; }

.d { grid-area: right; }

.e { grid-area: footer; }


.grid-box {

  display: grid;

  grid:

  'header header header header header header'

  'left main main main right right'

  'left footer footer footer footer footer';

  grid-gap: 10px;

  background-color: pink;

  padding: 10px;

}


.grid-box > div {

  background-color: rgba(255, 255, 255, 0.8);

  text-align: center;

  padding: 10px 0;

  font-size: 30px;

}

</style>


<div class="grid-box">

  <div class="a">a</div>

  <div class="b">b</div>

  <div class="c">c</div>  

  <div class="d">d</div>

  <div class="e">e</div>

</div>


결과보기



분류 제목
css CSS - 이미지 세로 나열 (= 수직 정렬) 방법/경우/원인/이유
flex CSS - order 속성(I) - 아이템 순서 재조정 (= order속성 = 오더속성, IE11) ※ 플렉…
func CSS - rgb() 함수 - (빨강,녹색,파랑)으로 색상 정의. (= rgb함수 = 알지비함수)
list CSS - list-style 속성 ★ - 리스트 스타일 일괄 (= 리스트마커 = list-style속성 =…
func CSS - rgba() 함수 ★ - (빨강,녹색,파랑,불투명도)으로 색상 정의. (= rgba함수 = 알지비…
intro CSS - 정의・장점・구문・초기화 + 주석
func CSS - hsla() 함수 - (색조, 채도, 밝기, 불투명도)로 색상 정의. (= hsla함수 = 에이치…
animation CSS - animation-duration 속성 - 애니지속시간 (= 애니완료소요시간 = 움직임완료소요시간…
css CSS - zoom 속성 - 요소 확대 (= zoom속성 = 줌속성) ※ IE 하위 브라우저(예: IE6, …
css CSS - 블럭요소 수직중앙정렬/수평중앙정렬 (= 가로가운데정렬) (IE9) ★★★★★ (HT - Cent…
flex CSS - align-self 속성(I) ★ - 교차축 기준으로, 아이템 자체 정렬. (= align-sel…
transform CSS - transform 속성 ★ - 요소 (회전/비틀기/크기확대) 변환 + 마우스 허버 시 줌효과 (=…
selector CSS - ::after 가상선택자 ★ - 요소 뒤에 내용삽입 (= ::after선택자 = 에프터선택자/애프…
text CSS - text-emphasis 속성 - 텍스트 강조마크의 '모먕/색깔' 일괄 지정 (= 텍스트 글자 위…
box CSS - margin-top 속성 - 바깥여백상단 (= margin-top속성 = 마진탑속성 = 마진톱속성…
responsive CSS - RES Video - (반응형 동영상)
selector CSS - element~element 형제선택자 ★★ - 지정요소 뒤의 모든 특정형제요소 (요소선택자군…
border CSS - border-top 속성 - 테두리상단일괄 (= border-top속성 = 보더탑속성 / 보더톱속…
table CSS - table-layout 속성 ★★★ - 테이블 셀, 행 및 열을 레이아웃 (= table-layo…
border CSS - border-style 속성 ★ - 테두리모양일괄 (= border-style속성 = 보더스타일속…
21/27
목록
찾아주셔서 감사합니다. Since 2012