CSS에서 grid-column-gap 속성을 사용하면 그리드(Grid) 레이아웃의 열과 열 사이 간격 크기를 손쉽게 조절할 수 있습니다. 이 속성에 픽셀(px) 등의 값을 지정하면 각 열 사이에 일정한 여백이 자동으로 적용되어, 복잡한 마진 계산 없이도 깔끔한 레이아웃을 만들 수 있습니다.
예제 코드
<!DOCTYPE html>
<html>
<head>
<style>
.container {
display: grid;
grid-auto-rows: 50px;
grid-column-gap: 30px;
grid-row-gap: 20px;
background-color: #2E86C1;
padding: 10px;
}
.container>div {
background-color: #F2D7D5;
text-align: center;
padding:10px 0;
font-size: 20px;
}
.ele3 {
grid-column-end: span 2;
}
</style>
</head>
<body>
<div class = "container">
<div class = "ele1">1</div>
<div class = "ele2">2</div>
<div class = "ele3">3</div>
<div class = "ele4">4</div>
<div class = "ele5">5</div>
<div class = "ele6">6</div>
</div>
</body>
</html>
주요 속성 설명
- display: grid; – 컨테이너 요소를 그리드 레이아웃으로 지정합니다.
- grid-auto-rows: 50px; – 명시적으로 높이가 정의되지 않은 모든 행의 높이를 50px로 자동 설정합니다.
- grid-column-gap: 30px; – 열(column) 사이의 간격을 30px로 지정합니다.
- grid-row-gap: 20px; – 행(row) 사이의 간격을 20px로 지정합니다.
- grid-column-end: span 2; – 세 번째 요소(.ele3)가 두 개의 열을 가로질러 배치되도록 설정합니다.
참고: 최신 gap 속성 활용하기
현재 CSS 표준에서는 grid-column-gap과 grid-row-gap 대신 row-gap, column-gap, 그리고 이 두 속성을 한 번에 처리하는 단축 속성인 gap 사용이 권장됩니다. 예를 들어 다음과 같이 작성하면 행 간격 20px, 열 간격 30px을 동시에 지정할 수 있습니다.
.container {
display: grid;
gap: 20px 30px; /* row-gap column-gap */
}
기존 브라우저 호환성을 고려해야 하는 경우에는 grid-column-gap 속성을 그대로 사용하고, 최신 환경이라면 gap 속성으로 더 간결하게 코드를 작성하는 것이 좋습니다.