CSS 다단 레이아웃 생성기는 글을 여러 단으로 나누는 선언, 곧 column-count(또는 column-width), column-gap, column-rule을 만들어 줍니다. 1에서 6까지의 단 수를 고정하거나 이상적인 단 너비를 기준으로 삼을 수 있고, 간격은 px이나 rem, 구분선은 굵기·스타일·색을 따로 정합니다. 미리보기는 끌어서 넓히고 좁힐 수 있는 상자 안에 기사를 흘려 보여 줍니다.
긴 글 한 덩어리를 신문이나 참고 자료처럼 읽히게 하고 싶을 때 다단 레이아웃이 맞습니다. 한 단의 끝에서 다음 단의 맨 위로 글이 이어집니다. 이용약관, 용어집, 릴리스 노트, 짧은 목록에는 잘 맞고 카드 그리드에는 맞지 않습니다. 카드는 CSS Grid가 행 단위로 배치합니다.
입력한 값은 브라우저 안에서 처리되며 업로드되지 않습니다. 출력은 .columns 클래스 규칙 블록이고, 제목을 모든 단에 걸치게 하는 .columns h2 규칙을 선택적으로 덧붙입니다. 그대로 붙여 넣거나 선언만 직접 만든 컨테이너 규칙으로 옮기면 됩니다.
작동 원리
세 가지 선언
CSS Multi-column Layout Module Level 1은 블록의 내용을 단으로 나누는 방법을 정의합니다. column-count는 단 수를 고정하고, 브라우저는 사용 가능한 너비에서 간격을 뺀 만큼을 단들에 나누어 줍니다. 반대로 column-width는 이상적인 최소 너비를 정하고 단 수는 브라우저가 계산하게 합니다. column-gap은 단 사이 간격이며 기본값 normal은 1em입니다.
column-rule은 굵기, 스타일, 색을 한 번에 지정하는 단축 속성이고, 인접한 두 단 사이 간격의 한가운데에 그려집니다. 선은 자리를 차지하지 않으므로 굵기를 바꿔도 글이 밀리지 않습니다. 간격이 선 굵기보다 작으면 선이 글자와 겹칩니다.
.columns {
column-count: 3;
column-gap: 32px;
column-rule: 2px solid #1746d1;
}
이 도구가 지키는 범위
아래 범위를 벗어나는 값은 입력칸에 오류로 표시합니다. 색은 항상 6자리 hex로 출력하며, 색 입력칸은 #fff를 #ffffff로 펼치고 blue 같은 색 이름은 무시합니다. 굵기가 0이거나 스타일이 none인 구분선은 0px none을 찍지 않고 출력에서 빠집니다. 간격과 너비는 소수 둘째 자리, 선 굵기는 소수 첫째 자리로 반올림됩니다.
| 옵션 | 허용 값 | 단위 |
|---|
| column-count | 1~6 정수 | 없음 |
| column-width | 40~1000px 또는 2.5~62.5rem | px 또는 rem |
| column-gap | 0~120px 또는 0~7.5rem | px 또는 rem |
| column-rule 굵기 | 0~20 | px |
| column-rule 스타일 | none, solid, dashed, dotted, double | 키워드 |
| column-rule 색 | #rrggbb | hex |
채우기, 균형, 끊김 제어
기본값인 column-fill: balance는 단의 높이를 고르게 맞춰서 마지막 단이 거의 비지 않게 합니다. 컨테이너 높이를 고정하고 column-fill: auto를 주면 한 단을 높이만큼 채운 뒤 다음 단으로 넘어갑니다.
그림이나 카드가 두 단에 걸쳐 쪼개지지 않게 하려면 break-inside: avoid를, 제목을 모든 단에 걸쳐 펼치려면 column-span: all을 씁니다. 제목 스위치가 column-span 규칙을 써 주고, break-inside와 column-fill은 출력에 포함되지 않으니 직접 추가하세요.