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

[grid] CSS - grid-area 속성(I) - 그리드 아이템 영역 '위치/크기확장' 지정 또는 그리드 아이템 영역 이름 지정 (= grid-area속성 = 그리드에어리어속성)

목차
  1. grid-area 예제 - 그리드 아이템 영역 '위치/크기' 직접 지정
  2. grid-area 정의
  3. grid-area 구문
  4. grid-area 예제 - 그리드 아이템 영역 '이름'만 지정 후 참조

 

grid-area 예제 - 그리드 아이템 영역 '위치/크기' 직접 지정

[목차]

 


[span 키워드로 영역 크기 지정 방식]

※ span 키워드를 이용해 지정 개수만큼 행열 확장.
 

<style>

.grid-box {

  display: grid;

  grid-template-columns: auto 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;

}


.a {

  grid-area: 2 / 1 / span 2 / span 3; /* 2행부터 2개행, 1열부터 3개열 확장 */

}

</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>

 

결과보기


[끝행과 끝열로 영역 크기 지정]

※ 주의: 행과 열의 끝 좌표는 포함 X

 

<style>

.a { grid-area: 1 / 1 / 2 / 2; } /* 1행부터 2행 앞까지, 1열부터 2열 앞까지 */

.b { grid-area: 1 / 2 / 2 / 3; }

.c { grid-area: 1 / 3 / 2 / 4; }

.d { grid-area: 2 / 1 / 3 / 2; }

.e { grid-area: 2 / 2 / 3 / 3; }

.f { grid-area: 2 / 3 / 3 / 4; }


.grid-box {

  display: grid;

  grid-auto-columns: 50px;

  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. grid-template-columns 속성은 grid-auto-columns 속성을 덮어씀.

 

grid-area 정의

 

그리드 아이템 영역의 '위치/크기'를 지정하거나 아이템의 '이름'을 지정. (아래 속성을 일괄 지정 가능한 단축 속성)

 


 

1.

영역 '이름' 지정 방식으로 사용 경우, grid-template-areas 속성에서 해당 이름을 참조해 영역 지정함.

 

2.

  • 기본값: auto / auto / auto / auto
  • 상속여부: X
  • 애니가능: O
  • CSS버전: CSS Grid Layout Module Level 1
  • JS구문: object.style.gridArea="1 / 2 / span 2 / span 3";

 

3.

IE 제외한 주요 최신 브라우저 모두 지원.

 

4. MDN grid-area 예제보기

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

 

 

grid-area 구문

 

selector {grid-area: grid-row-start / grid-column-start / grid-row-end / grid-column-end | itemname;}

 


[속성값]

 

grid-row-start

아이템 영역 시작행 좌표

grid-column-start

아이템 영역 시작열 좌표

 

grid-row-end

아이템 영역 끝행 좌표 (포함 X) 

  • span number 형식 경우, 지정 숫자만큼 확장. (예) span 2 경우, 2개행 확장.

grid-column-end
아이템 영역 끝열 좌표 (포함 X) 
  • span number 형식 경우, 지정 숫자만큼 확장. (예) span 3 경우, 3개 열 확장.

 

itemname

아이템 이름.

 

 

grid-area 예제 - 그리드 아이템 영역 '이름'만 지정 후 참조

[목차]

 


[1행의 모든 열을 확장]

 

<style>

.a {

  grid-area: hz;

}


.grid-box {

  display: grid;

  grid-template-areas: 'hz 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">d</div>  

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

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

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

</div>

 

결과보기


[1행의 2열만 확장]

 

<style>

.a {

  grid-area: hz;

}


.grid-box {

  display: grid;

  grid-template-areas: '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">d</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>

 

결과보기


[행열 확장]

 

<style>

.a {

  grid-area: hz;

}


.grid-box {

  display: grid;

  grid-template-areas: '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">d</div>  

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

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

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

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

</div>

 

결과보기


[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-template-areas:

  '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">Header</div>

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

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

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

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

</div>

 

결과보기



분류 제목
text CSS - writing-mode 속성 - 텍스트 방향 가로/세로 제어. (= 글쓰기 방향 = 쓰기 모드 제…
css CSS - pointer-events 속성 - 마우스이벤트에 대한 반응 여부 (= pointer-events…
css CSS - hanging-punctuation 속성 - 문장부호 위치 지정 (= hanging-punctua…
css CSS - 자식요소 앞에 순번 붙이기 (= 번호 매기기 = 색인번호 추가 = 요소 카운팅)
selector CSS - :indeterminate 선택자 - 불확정요소 선택 (= :indeterminate선택자 = 인…
css CSS - 구글 로그인 포커스 애니 효과 (Google Logn Foucs Animation Effect) …
selector CSS - :placeholder-shown 선택자 - 플레이스홀더 텍스트 표시 중인 요소 선택 (= :pl…
css CSS - 이미지 세로 나열 (= 수직 정렬) 방법/경우/원인/이유
selector CSS - ::-webkit-scrollbar - 스크롤바 선택자 (= 스크롤바 모양 디자인 커스텀 = Cu…
box CSS - block-size 속성 - 블락 방향으로 요소 크기 지정 (= block-size속성 = 블락…
box CSS - inline-size 속성 - 인라인방향으로 요소 크기 지정 (= inline-size속성 = 인…
text CSS - overflow-wrap 속성 - 줄바꿈 위해 단어 쪼개기 (= overflow-wrap속성 = …
background CSS - Multi Background 구문 - 한번에 여러 배경 속성값 사용
selector CSS - ::placeholder 선택자 - 플레이스홀더 선택자
css CSS - 인스타그램(instagram) 배경색 효과
css CSS - currentcolor 키워드 - 현재 글자색 속성값을 그대로 사용 (= 커런트컬러 속성값)
image CSS - object-fit 속성 - 컨테이너에 맞게 '이미지/비디오' 크기 조정 방법 지정 (= obje…
image CSS - object-position 속성 - <img>/<video>가 "자체 콘텐츠 상자" 내부의 x/…
css CSS - 코드펜 스타트 코딩 버튼 테두리 효과 (Codepen Start Coding Button Bord…
css CSS - translate 속성 - 2D/3D 상 요소 위치 좌표 변경 지정 (= translate속성 =…
16/25
목록
찾아주셔서 감사합니다. Since 2012