몽땅뚝딱 개발자
[CSS] grid 본문

flex는 가로로 정렬하는 기준을 정하는 속성이라면 grid는 가로와 세로의 규칙을 모두 정할 수 있다.
위의 구성에서 상단의 2줄은 3x2로 구성되어있으며 엘리먼트가 총 6개이다.
CSS는 다음과 같다.
<div class="box-wrap">
<div><img src="..." /></div>
<div><img src="..." /></div>
<div><img src="..." /></div>
<div><img src="..." /></div>
<div><img src="..." /></div>
<div><img src="..." /></div>
</div>
.box-wrap {
display: grid;
/* 컬럼의 개수와 너비를 지정한다. 나는 3개로 설정했다. */
/* 1fr 1fr 1fr 등으로 지정 할 수도 있다. */
grid-template-columns: 200px 200px 200px;
/* 줄의 개수와 너비를 지정한다. 나는 2개로 설정했다. */
grid-template-rows: 200px 200px;
}
그리고 하단의 2줄은 4칸을 차지하는 엘리먼트 1개와 각각 1칸씩 차지하는 엘리먼트 2개로 엘리먼트가 총 3개이다.
이 경우 CSS는 다음과 같다.
<div class="box-wrap">
<div class="big"><img src="..." /></div>
<div><img src="..." /></div>
<div><img src="..." /></div>
</div>
.box-wrap {
display: grid;
grid-template-columns: 200px 200px 200px;
grid-template-rows: 200px 200px;
/* 가장 큰 영역을 차지하는 엘리먼트에 적용 */
&.big {
/* 시작줄, 시작열, 끝줄, 끝열 */
/* 3번째, 4번째 값은 해당 값의 엘리먼트가 시작되기 전의 위치이다. */
grid-area: 1 / 1 / 3 / 3;
}
}
참고
grid-area - CSS: Cascading Style Sheets | MDN
The grid-area CSS shorthand property specifies a grid item’s size and location within a grid by contributing a line, a span, or nothing (automatic) to its grid placement, thereby specifying the edges of its grid area.
developer.mozilla.org
개인적으로 공부한 내용을 정리하는 블로그로
잘못된 개념을 게시하지않도록 주의하고 있으나 오류가 있을 수 있습니다.
'Development > HTML · CSS' 카테고리의 다른 글
[HTML] 시맨틱 태그(semantic tag) (0) | 2022.01.10 |
---|---|
[CSS] li 전체에 링크 걸기 (0) | 2022.01.03 |
[CSS] flex (0) | 2021.12.28 |
[CSS] outline과 border의 차이 (0) | 2021.12.22 |
[Sass] 공통 mixin 정리 (0) | 2021.12.22 |