CSS 레이아웃 도구

CSS 레이아웃 생성기— 배치와 코드를 함께 확인

Grid와 Flexbox를 전환하며 캔버스, 미리보기, HTML/CSS 결과를 함께 확인하세요.

CSS 레이아웃 생성기

레이아웃 캔버스

시작 셀과 반대쪽 모서리를 차례로 선택하세요.

실시간 미리보기

생성된 코드

.layout {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-template-rows: auto auto auto;
  gap: 16px;
  grid-template-areas:
    "header header header"
    "sidebar main main"
    "footer footer footer";
}
.area-header { grid-area: header; }
.area-sidebar { grid-area: sidebar; }
.area-main { grid-area: main; }
.area-footer { grid-area: footer; }
@media (max-width: 640px) {
  .layout {
    grid-template-columns: 1fr;
    grid-template-rows: none;
    grid-template-areas: "header" "sidebar" "main" "footer";
  }
}

레이아웃 설정은 이 브라우저 탭에서만 처리하며 업로드하거나 저장하지 않습니다.

코드와 미리보기가 최신입니다.

헤더와 사이드바, 본문을 함께 배치할 때 grid-template-areas를 손으로 쓰면 셀 개수가 어긋나기 쉽습니다. CSS 레이아웃 생성기는 이름이 붙은 영역을 먼저 캔버스에 보여 줍니다.

메뉴처럼 한 방향으로 흐르는 항목은 Flexbox가 알맞습니다. 이 CSS 레이아웃 생성기는 두 모드의 값을 따로 기억하므로 다시 Grid로 돌아와도 설정이 남습니다.

CSS 레이아웃 생성기를 쓰는 이유

캔버스와 실제로 복사할 코드가 같은 설정을 사용합니다.

Grid와 Flex를 한곳에서 전환

CSS 그리드 빌더의 이름 영역과 Flexbox 생성기의 항목 정렬을 한 화면에서 비교할 수 있습니다. 모드를 바꿔도 간격과 정렬 선택이 유지됩니다.

이름 붙은 세 열의 Grid와 네 항목의 가로 Flex 배열을 나란히 그린 그림.

모바일 미리보기와 CSS가 일치

반응형 레이아웃 프리셋은 640px 이하에서 세로로 쌓는 미디어 쿼리를 실제로 출력합니다. 작은 화면 그림만 줄이는 방식이 아닙니다.

세 열 데스크톱 배치와 같은 영역의 한 열 모바일 배치를 비교한 그림.

미리보기와 결과를 맞추는 방법

01

배치 방식을 고르기

행과 열이 함께 필요하면 Grid, 한 축을 따라 흐르는 항목이면 Flexbox를 선택합니다. 모드 전환 후에도 두 설정은 남습니다.

  • 기본 Grid 예제에는 네 개의 직사각형 영역이 있습니다.
02

트랙과 영역 바꾸기

열과 행에는 fr, px, auto, minmax() 같은 값을 쓸 수 있습니다. 영역을 고른 뒤 사각형의 양쪽 모서리를 차례로 누르세요.

  • 자동 생성을 끄면 Ctrl/Cmd+Enter로 수동 실행할 수 있습니다.
03

좁은 화면 확인하기

390px 미리보기에서 항목이 세로로 쌓이는지 확인하세요. 설정을 바꾼 직후에는 오래된 코드를 복사하거나 내려받을 수 없습니다.

  • 모바일 쌓기 프리셋을 선택한 경우에만 미디어 쿼리가 나옵니다.

시각적 배치에서 코드까지

이름이 붙은 Grid 영역

grid-template-areas 생성기에서 영역을 그리고 HTML 자식과 grid-area 규칙에 같은 이름을 사용합니다. grid-template-columns 생성기에서 열 값을 확인한 뒤 코드를 복사하세요.

Flexbox 컨테이너 조절

방향, 줄 바꿈, 두 축의 정렬, 항목 수와 간격을 바꾸면 브라우저가 그 결과를 바로 보여 줍니다.

함께 내보내는 HTML과 CSS

640px 모바일 규칙을 포함한 CSS와 맞는 HTML을 복사하거나 독립 파일로 내려받을 수 있습니다.

영역과 출력 범위

같은 이름은 직사각형 하나
겹침, L자 모양, 떨어진 셀은 허용하지 않습니다. 이런 grid-template-areas 선언은 브라우저가 무시하므로 이전 결과의 내보내기도 막습니다.
트랙 크기 검증
1fr, 200px, auto, minmax(120px, 1fr) 등을 사용할 수 있습니다. 잘못된 값은 코드 생성을 막고 오류 위치를 알려 줍니다.
모바일 분기점 하나
640px 이하에서 쌓는 규칙만 만듭니다. 태블릿과 데스크톱 버튼은 미리보기 너비만 바꾸며 Tailwind나 SCSS는 생성하지 않습니다.
HTML은 예제 구조
Grid의 영역 이름이나 번호가 붙은 Flex 항목을 생성합니다. 기존 웹 페이지를 역으로 분석하거나 실제 콘텐츠를 편집하지 않습니다.

CSS 레이아웃 생성기 자주 묻는 질문

Grid와 Flexbox는 언제 각각 사용하나요?

페이지의 행과 열을 함께 정하면 Grid, 한 방향으로 항목을 배치하면 Flexbox가 적합합니다. CSS 레이아웃 생성기에서 두 방식을 번갈아 비교할 수 있습니다.

CSS 그리드의 열 개수와 간격은 어떻게 정하나요?

열 수와 간격은 콘텐츠 크기를 기준으로 조정하세요. 1fr은 남는 공간을 나누고 gap은 트랙 사이만 벌립니다.

긴 콘텐츠 때문에 그리드 열이 넘치는 이유는 무엇인가요?

긴 문자열은 항목의 기본 최소 너비 때문에 열을 밀어낼 수 있습니다. 생성된 예제는 자식에 min-width:0과 줄바꿈을 적용하지만 실제 콘텐츠도 확인해야 합니다.

반응형 그리드는 어떻게 만드나요?

기본 프리셋은 640px 이하에서 세로로 쌓습니다. 390px 미리보기와 출력된 @media 규칙을 함께 확인하세요.

생성한 CSS를 어디에 붙여 넣나요?

생성된 .layout CSS는 부모 요소에, 해당 HTML은 페이지 본문에 넣으세요. 실제 프로젝트의 클래스 이름과 콘텐츠에 맞게 조정할 수 있습니다.

필요한 배치가 빠졌나요?

CSS 레이아웃 생성기 시작하기

예제에서 시작해 브라우저의 실제 배치를 확인하고 함께 생성된 HTML과 CSS를 프로젝트에 적용하세요.