기획 & 디자인

반응형 그리드·레이아웃 시스템 — 정렬되는 화면 만들기

  • 언웹스
  • 업데이트
  • 5분 분량
목차
  1. 3가지 기본 개념
  2. 컨테이너 — 콘텐츠를 가두는 폭
  3. breakpoint — 화면 크기 분기
  4. CSS Grid vs Flexbox — 언제 무엇을
  5. CSS Grid 예시 — 카드 그리드
  6. 자동 반응형 그리드 (breakpoint 없이)
  7. Flexbox 예시 — 가로 정렬
  8. 모바일에서 그리드 무너뜨리기
  9. 간격(spacing)도 시스템으로
  10. 정렬 점검 체크리스트
  11. 자주 하는 실수
  12. FAQ
  13. 관련 가이드

디자인이 어딘가 어설퍼 보인다면 대개 정렬과 간격이 들쭉날쭉하기 때문입니다. 그리드 시스템은 화면을 보이지 않는 격자로 나눠 모든 요소를 그 선에 맞추는 것입니다. 한 번 규칙을 정하면 어느 페이지든 깔끔하게 정렬됩니다.

이 글은 레이아웃 구조를 다룹니다. 색·간격 같은 토큰은 디자인 시스템·토큰, 모바일 작성법은 모바일 우선 디자인을 참고하십시오.

3가지 기본 개념

개념 정의 보통 값
컨테이너 콘텐츠 최대 폭. 양옆 여백 확보 1100~1280px
컬럼(Column) 컨테이너를 나눈 세로 칸 12칸이 표준
거터(Gutter) 컬럼 사이 간격 16~32px

12컬럼이 표준인 이유: 2·3·4·6으로 깔끔하게 나눠져서(2단·3단·4단·6단) 어떤 레이아웃에도 유연합니다.

컨테이너 — 콘텐츠를 가두는 폭

화면이 아무리 넓어도 콘텐츠는 일정 폭 안에 둡니다. 안 그러면 와이드 모니터에서 글이 한 줄에 너무 길어져 >읽기 힘듭니다.

>

.container {
  max-width: 1200px;
  margin: 0 auto;      /* 가운데 정렬 */
  padding: 0 20px;     /* 모바일 양옆 여백 */
}
  • 본문 읽기 영역은 더 좁게 (650~760px) — 한 줄 길이가 길면 가독성↓

breakpoint — 화면 크기 분기

화면 폭에 따라 레이아웃을 바꾸는 기준점입니다. 너무 잘게 나누지 말고 >3~4개면 충분합니다.

>

구간 레이아웃
모바일 ~767px 1단 (세로 쌓기)
태블릿 768~1023px 2단
데스크탑 1024px~ 3~4단

모바일 우선 원칙대로 모바일(1단) 기본 → 넓어지면 단을 늘리는 방향으로 작성합니다.

CSS Grid vs Flexbox — 언제 무엇을

둘 다 레이아웃 도구지만 쓰임이 다릅니다.

CSS Grid Flexbox
방향 2차원 (행+열) 1차원 (행 또는 열)
적합 페이지 전체 레이아웃, 카드 그리드 네비게이션, 버튼 줄, 정렬
갤러리 3×3, 대시보드 헤더 메뉴, 가로 정렬

CSS Grid 예시 — 카드 그리드

.cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);  /* 3단 */
  gap: 24px;
}
@media (max-width: 767px) {
  .cards { grid-template-columns: 1fr; }   /* 모바일 1단 */
}

자동 반응형 그리드 (breakpoint 없이)

.cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
}

→ 카드 최소 폭 280px를 유지하며 화면에 맞게 자동으로 칸 수가 바뀝니다. >media query 없이도 반응형입니다.

>

Flexbox 예시 — 가로 정렬

.nav {
  display: flex;
  align-items: center;
  gap: 16px;
}

모바일에서 그리드 무너뜨리기

데스크탑의 여러 단은 모바일에서 세로로 쌓는 게 기본입니다.

[데스크탑]            [모바일]
┌───┬───┬───┐        ┌───────┐
│ A │ B │ C │   →    │   A   │
└───┴───┴───┘        ├───────┤
                     │   B   │
                     ├───────┤
                     │   C   │
                     └───────┘
  • 3단 → 1단 (또는 2단)
  • 좌우 배치 → 위아래 배치
  • 우선순위 높은 콘텐츠가 위로 오게 순서 조정

간격(spacing)도 시스템으로

그리드만큼 중요한 게 일관된 간격입니다. 4px 또는 8px 배수로 통일하십시오.

4 · 8 · 12 · 16 · 24 · 32 · 48 · 64

→ 아무 값(13px, 27px)이나 쓰지 말고 이 단계에서만 고르면 자동으로 정돈됩니다. (디자인 토큰 참고)

정렬 점검 체크리스트

  • [ ] 콘텐츠가 컨테이너 폭 안에 정렬되는가
  • [ ] 요소들이 같은 좌우 기준선에 맞는가
  • [ ] 카드·이미지 간격(거터)이 일정한가
  • [ ] 간격이 4·8 배수로 통일됐는가
  • [ ] 모바일에서 단이 깔끔히 세로로 쌓이는가
  • [ ] 본문 한 줄이 너무 길지 않은가 (650~760px)

실전 노트. 저희는 모든 프로젝트에서 브레이크포인트를 1440·1180·768·480 네 개로 고정하고, 페이지별로 임의의 BP를 추가하는 것을 금지합니다. 여기에 원칙 하나를 더합니다 — 가로 스크롤이 생기면 overflow 숨김으로 덮지 않고 래핑·스태킹으로 구조를 바꿔 해결한다. 이 두 가지만 지켜도 반응형 버그의 대부분은 애초에 생기지 않습니다.

자주 하는 실수

  • 컨테이너 없이 풀폭 콘텐츠: 와이드 모니터에서 글이 한 줄에 너무 김
  • 간격 값 제멋대로: 13px·27px·5px 섞임 → 어수선
  • Grid·Flexbox 혼동: 1차원엔 Flex, 2차원엔 Grid
  • breakpoint 과다: 7~8개로 잘게 나눠 관리 불가
  • 모바일에서 좌우 배치 강제: 좁은 화면에 억지 다단 → 깨짐
  • 요소마다 기준선 다름: 정렬 안 맞아 어설퍼 보임

FAQ

Q. 12컬럼을 꼭 써야 하나요?
A. 강제는 아니지만 표준이라 협업·도구 호환이 좋습니다. 간단한 사이트는 auto-fit 그리드로 컬럼 수를 신경 안 써도 됩니다.

Q. Grid와 Flexbox 중 하나만 배워도 되나요?
A. 둘 다 쓰는 게 좋지만, 시작은 Flexbox가 쉽습니다. 카드·갤러리 같은 2차원 배치가 늘어나면 Grid를 익히세요. 한 페이지에서 둘을 섞어 써도 됩니다.

Q. 페이지 빌더(Elementor·아임웹)에도 적용되나요?
A. 빌더는 자체 컬럼·섹션 시스템을 제공합니다. 개념(컨테이너·단·간격)은 동일하니, 빌더에서도 간격을 일정하게, 모바일에서 세로로 쌓이게 설정하면 됩니다.

Q. 본문 폭은 왜 좁게 하나요?
A. 한 줄이 너무 길면(100자 이상) 눈이 다음 줄을 찾기 어려워 가독성이 떨어집니다. 본문은 650~760px, 즉 한 줄 >45~75자가 읽기 편합니다.

>


관련 가이드

이 가이드가 도움이 되셨다면

홈페이지 제작·SEO 상담을 받아보세요

3분 문의접수로 무료 상담을 받아보실 수 있습니다.