카드뉴스 텍스트 줄바꿈 가독성 수식과 word-break keep-all 가이드

카드뉴스나 인스타그램 카드 이미지를 만들다 보면, 제목 문구가 하필 단어 중간에서 잘려 다음 줄로 넘어가거나 유독 한 줄만 길게 튀어나오는 경우가 자주 생깁니다. 포토샵 같은 디자인 툴에서 줄바꿈 위치를 손으로 바꿔가며 매번 확인하는 대신, 이 글에서는 word-break·line-height·text-wrap 같은 CSS 속성으로 한글 어절이 잘리지 않게 잡는 방법과 1:1 가상 캔버스에서 미리 확인하는 방법을 정리합니다.
요약 ① 한글 단어(어절)가 중간에서 잘리는 건 word-break 속성을 지정하지 않았을 때 브라우저 기본 규칙 때문에 생기는 문제입니다. ② word-break: keep-all, line-height 1.3~1.4, text-wrap: balance 세 속성을 함께 쓰면 대부분 해결됩니다. ③ 값을 코드로 하나씩 바꿔보는 대신 1:1 가상 카드 캔버스에서 실시간으로 확인하는 시뮬레이터를 쓸 수도 있습니다.
카드뉴스 텍스트가 어색하게 잘리는 이유
브라우저의 기본 줄바꿈 규칙은 공백(스페이스)을 기준으로 어절 전체를 다음 줄로 넘기거나, 그래도 폭을 넘으면 글자 단위로 강제로 잘라버립니다. 한글은 명사 뒤에 조사가 바로 붙는 언어라 "명사 + 조사" 경계에서 끊겨야 자연스러운데, 기본 규칙은 이 경계를 구분하지 못합니다. 그 결과 "카드뉴스를"이 "카드뉴 스를"처럼 어절 중간에서 잘리는 현상이 나타납니다. 1080x1080px 같은 좁은 정사각형 카드에서는 텍스트가 들어갈 폭이 제한적이라 이 문제가 특히 자주 눈에 띕니다.
직접 CSS로 줄바꿈 잡는 방법
이 문제는 별도 프로그램 없이 CSS 속성 몇 개만 조합해도 대부분 해결됩니다.
카드가 몇 줄로 줄바꿈될지는 대략 이렇게 어림잡을 수 있습니다: 텍스트 전체 폭을 (카드 폭 − 좌우 패딩의 합)으로 나눈 값을 올림(소수점 이하는 무조건 올림)한 것이 예상 줄 수입니다. 예를 들어 텍스트 전체 폭이 900px, 카드 폭이 360px, 좌우 패딩이 각 32px(합 64px)라면 카드에서 텍스트가 실제로 쓸 수 있는 폭은 360 − 64 = 296px이고, 900 ÷ 296 ≈ 3.04이므로 올림해서 4줄 정도로 줄바꿈됩니다.
가독성을 높이는 CSS 속성 세 가지
- word-break: keep-all: 한글 단어(어절)가 문장 중간에서 잘려 다음 줄로 넘어가 오독을 유발하는 현상을 방지하고, 단어 단위로 묶여 줄바꿈되도록 강제합니다.
- line-height: 1.3~1.4: 타이틀 문구의 행간이 너무 넓으면 텍스트가 파편화되어 보이고, 너무 좁으면 글자가 겹쳐 보입니다. 카드뉴스 타이틀에는 1.35 내외가 무난합니다.
- text-wrap: balance: 부모 컨테이너 너비 안에서 각 줄의 글자 수가 균등한 길이로 분배되도록 자동으로 조정하는 속성입니다.
다음은 모바일 화면에서 어절 줄바꿈과 폰트 가독성을 확보하는 카드뉴스 CSS 예시입니다.
<div class="card-news-canvas">
<div class="card-text-container">
<span class="badge">MARKETING TIPS</span>
<h2 class="card-title">인스타그램 카드뉴스 텍스트 줄바꿈 가독성 노하우</h2>
<p class="card-desc">한글 단어가 끊기지 않고 예쁘게 떨어지는 최적의 레이아웃 배치 시뮬레이션</p>
</div>
</div>
.card-news-canvas {
width: 360px;
height: 360px; /* 1:1 정방형 캔버스 */
padding: 32px;
background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
color: #ffffff;
display: flex;
flex-direction: column;
justify-content: center;
border-radius: 16px;
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}
.card-title {
font-size: 26px;
font-weight: 800;
line-height: 1.35;
letter-spacing: -0.5px;
/* 핵심 어절 자르기 방지 및 자동 밸런스 */
word-break: keep-all;
overflow-wrap: break-word;
text-wrap: balance;
}
.card-desc {
margin-top: 12px;
font-size: 14px;
color: #94a3b8;
line-height: 1.5;
word-break: keep-all;
}
실무에서 자주 놓치는 부분
- 줄 끝 조사의 어색한 분리: 조사가 다음 줄로 혼자 넘어가지 않도록, 주요 명사 구문 단위로 br 태그를 넣거나 word-break: keep-all을 선언해 마무리하는 편이 좋습니다.
- 배경 이미지 위 텍스트 대비: 배경에 사진이 들어가는 카드뉴스라면 텍스트 뒤에 background: rgba(0, 0, 0, 0.4) 같은 딤드 처리나 backdrop-filter: blur(4px) 같은 블러 처리를 더해 글자 선명도를 확보해야 합니다.
참고 코드를 열어 값을 하나씩 바꾸고 브라우저를 새로고침하며 확인하는 대신, 문구를 입력한 뒤 제목·부제목·본문 폰트 크기와 배경 템플릿, 가로·세로 정렬 옵션을 화면에서 바로 조절해 결과를 볼 수도 있습니다. 다만 행간과 word-break 값은 요소별로 이미 최적화되어 고정되어 있어 별도로 조절하는 기능은 없습니다.
매번 코드를 수정하고 새로고침하는 대신, 문구만 입력하면 1:1 카드 화면에 바로 반영해서 확인할 수 있는 저희 도구로 확인하기.
1:1 정사각형 가상 카드뉴스 캔버스 위에서 문구를 입력하고 어절 줄바꿈과 폰트 정렬을 실시간 시뮬레이션해 보세요.

핵심 CSS 속성 한눈에 보기
| 속성 | 값 | 역할 |
|---|---|---|
| word-break | keep-all | 한글 단어(어절)가 중간에서 잘리지 않고 단어 단위로 줄바꿈 |
| line-height | 1.3~1.4 | 타이틀 행간. 너무 넓으면 파편화되어 보이고 너무 좁으면 글자가 겹침 |
| text-wrap | balance | 각 줄의 글자 수가 균등해지도록 자동 배분(미지원 브라우저에서는 무시되고 기본 줄바꿈으로 표시됨) |
정리
- 한글 텍스트가 어절 중간에서 잘리는 건 브라우저 기본 줄바꿈 규칙이 조사 경계를 구분하지 못하기 때문입니다.
- word-break: keep-all을 지정하면 단어 단위로만 줄이 바뀝니다.
- line-height 1.3~1.4, text-wrap: balance를 함께 쓰면 줄 길이가 고르게 정리됩니다.
- 배경 사진이 있는 카드에는 딤드나 블러 처리를 더해 글자 대비를 확보해야 합니다.
- 코드를 직접 하나씩 바꾸는 대신, 시뮬레이터에서 실시간으로 확인하고 완성된 스타일을 바로 가져올 수 있습니다.
1:1 정사각형 가상 카드뉴스 캔버스 위에서 문구를 입력하고 어절 줄바꿈과 폰트 정렬을 실시간 시뮬레이션해 보세요.
📖 카드뉴스 디자인, 현장에서 벌어지는 아찔한 사연 3가지
소셜 미디어나 마케팅 실무에서 카드뉴스를 제작해 본 분들이라면 텍스트 레이아웃 때문에 식은땀을 흘린 경험이 한 번쯤은 있을 것입니다. 다음은 실제 현업에서 가장 빈번하게 일어나는 텍스트 가독성 관련 실패 사연들입니다.
사연 1: 브랜드 신제품 출시가 조롱거리가 된 사연
패션 브랜드의 소셜 미디어 마케터인 A씨는 야심 차게 준비한 신제품 론칭 캠페인을 위해 인스타그램용 카드뉴스 10장을 제작했습니다. 포토샵을 열 여유가 없어 급하게 웹 기반 툴로 텍스트를 얹었는데, 가장 중요한 핵심 문구인 "트렌디한 신상품이 출시되었습니다"라는 문장이 모바일 화면에서 "트렌디한신 상품이출시"라는 식으로 기괴하게 잘려버렸습니다. A씨는 CSS의 word-break: keep-all 속성이나 한국어 어절 단위 줄바꿈 규칙을 제대로 적용하지 못했던 것입니다. 결국 이 게시물은 "신상품이 가출했냐"는 팔로워들의 조롱 섞인 댓글이 달렸고, 브랜드 이미지가 실추되는 참사를 겪어야 했습니다. 한글 어절이 잘리지 않도록 제어하는 것이 얼마나 중요한지 보여주는 대표적인 사례입니다.
사연 2: 콜투액션(CTA)이 인스타그램 UI에 가려져 사라진 사연
독립 콘텐츠 크리에이터인 B씨는 1080x1080px 크기의 완벽한 정방형 캔버스에 정보성 카드뉴스를 제작했습니다. 가독성을 높이겠다는 의도로 본문 텍스트의 행간(line-height)을 무려 1.8까지 설정하고 텍스트를 빼곡히 넣었습니다. 하지만 너무 넓은 행간 때문에 전체 텍스트 블록의 세로 길이가 길어졌고, 가장 하단에 배치했던 "프로필 링크에서 확인하세요"라는 부제목과 콜투액션 문구가 인스타그램 앱의 하단 슬라이드 점(Carousel dots) UI 및 내비게이션 바 오버레이 영역으로 밀려나 버렸습니다. 정작 가장 중요한 정보가 모바일 기기의 세이프 존(Safe Area)을 벗어나 UI에 완전히 가려져 버렸고, 그날 게시물의 전환율은 처참한 수준을 기록하고 말았습니다.
사연 3: 한낮의 야외에서는 보이지 않는 '유령 텍스트' 사연
스타트업의 주니어 디자이너 C씨는 감각적이고 컬러풀한 라이프스타일 사진을 배경으로 깔고, 그 위에 얇은 두께의 흰색 텍스트를 그대로 올린 감성적인 카드뉴스를 업로드했습니다. C씨의 레티나 모니터 작업 환경에서는 아주 세련되고 잘 보이는 듯했습니다. 그러나 다음 날, 출근길 버스 정류장에서 쏟아지는 직사광선 아래 자신의 스마트폰으로 해당 게시물을 확인한 C씨는 경악했습니다. 배경 사진과 흰색 텍스트 간의 명도 대비가 턱없이 부족하여, 텍스트가 거의 80% 이상 읽히지 않는 '유령 글씨'가 되어 있었던 것입니다. 사진 위에 텍스트를 올릴 때는 반드시 background: rgba(0,0,0,0.4)와 같은 딤드(Dimmed) 오버레이 처리를 해야만 모바일 화면과 야외 환경에서도 충분한 대비(Contrast Ratio)를 확보할 수 있다는 기본기를 놓친 대가였습니다.
🔬 핵심 기술 메커니즘: 브라우저는 한글 줄바꿈을 어떻게 처리할까?
이러한 문제들을 해결하기 위해서는 브라우저의 텍스트 렌더링 엔진과 웹 타이포그래피의 핵심 기술적 메커니즘을 정확히 이해해야 합니다. 모바일과 웹에서 텍스트가 어떻게 그려지는지 파악하면 어떤 화면 크기에서도 깨지지 않는 레이아웃을 구축할 수 있습니다.
1. 한글 타이포그래피 엔진과 word-break 속성
웹 브라우저의 텍스트 렌더링 엔진은 영어와 라틴어 기반 언어에 맞춰 발전해 왔습니다. 영어는 띄어쓰기를 기준으로 단어를 구분하기 때문에 단어 단위로 줄을 바꾸는 것이 자연스럽습니다. 반면, 한국어(그리고 CJK 언어)는 교착어로 명사 뒤에 조사가 빈틈없이 결합되는 특성을 가집니다. 기본 설정에서 브라우저는 한글을 만났을 때 띄어쓰기를 기준으로 줄을 바꾸려 하지만, 부모 컨테이너의 너비가 좁아지면 가차 없이 글자(Character) 단위로 잘라버립니다(word-break: break-all의 기본 동작과 유사). 이로 인해 "카드뉴스가"라는 단어가 "카드뉴"와 "스가"로 어색하게 분리됩니다. 이를 해결하는 핵심 CSS가 바로 word-break: keep-all입니다. 이 속성을 부여하면 브라우저의 렌더링 엔진은 한글 텍스트를 CJK 특수 처리하는 대신, 띄어쓰기(공백)를 기준으로 한 단어(어절)와 그 뒤에 붙은 조사를 한 덩어리로 묶어 취급하게 됩니다. 단어 중간에서 강제로 자르는 행위를 억제하고, 무조건 다음 줄로 전체 어절을 넘겨 오독을 방지합니다.
2. 최신 CSS 텍스트 래핑 기술: text-wrap의 진화
최근 모던 웹 브라우저에 도입된 혁신적인 속성 중 하나가 text-wrap입니다.
- text-wrap: balance: 카드뉴스 제목처럼 2~4줄 정도의 굵고 짧은 텍스트에 적용하면, 브라우저가 내부적으로 이진 탐색(Binary Search)이나 동적 계획법(Dynamic Programming) 알고리즘을 사용해 각 줄의 텍스트 너비 편차를 최소화합니다. 즉, 첫 줄만 무지막지하게 길고 마지막 줄에 한 단어만 남는 불균형을 막고, 시각적인 무게 중심을 맞춰 가독성을 극대화합니다. 수학적으로는 텍스트 블록의 면적 영역을 너비와 높이로 나눌 때 각 줄의 길이가 최대한 너비에 근접하게 만드는 수학적 비용 함수 연산( $ C = sum_{i=1}^{n} (W - w_i)^2 $ )을 최소화하는 과정을 거칩니다.
- text-wrap: pretty: 본문 단락에서 마지막 줄에 외톨이 단어(Orphan word)가 홀로 남는 것을 방지하는 데 특화된 속성입니다.
3. 정방형 캔버스(1:1)의 시각적 계층 구조와 황금 비율
카드뉴스 캔버스는 주로 1080x1080px(또는 1080x1350px 4:5 비율)로 디자인됩니다. 한정된 사각형 캔버스 안에서 시선을 유도하는 최적의 폰트 사이즈와 행간(Line-height)의 황금 비율 계층 구조는 다음과 같습니다.
- Title (제목): 26~32px (모바일 CSS 렌더링 기준), Font-weight 800(Extra Bold). 제목은 시선을 확 끌어당겨야 하므로 행간(line-height)을 1.35 정도로 타이트하게 잡아 덩어리감을 부여합니다.
- Subtitle / Badge (부제목 및 배지): 12~14px, Font-weight 700(Bold). 제목을 보조하거나 카테고리를 알려주는 역할입니다.
- Body (본문 설명): 14
16px, Font-weight 400(Regular). 긴 설명이 들어가므로 가독성을 위해 행간을 1.51.6으로 넉넉하게 설정하여 글줄이 엉키는 현상을 막습니다.
4. 인스타그램 모바일 세이프 존 (Safe Zone)
카드뉴스는 주로 인스타그램 등 모바일 앱에서 소비됩니다. 1080x1080px 캔버스를 기준으로 할 때 상하좌우 가장자리에 최소 100px의 여백(Margin/Padding)을 두어야 합니다. 이는 앱 자체의 UI(프로필 아이콘, 텍스트 더보기 버튼, 페이지네이션 점 등)가 이미지를 덮는 것을 피하기 위함입니다. 핵심 텍스트와 디자인 요소는 중앙의 880x880px 영역인 '세이프 존' 내부에 안전하게 안착시켜야 사용자 인터페이스의 방해 없이 온전히 정보가 전달됩니다.
📊 CSS 텍스트 줄바꿈 속성 총정리 및 비교 테이블
웹과 카드뉴스 레이아웃에서 텍스트의 줄바꿈과 정렬을 통제하기 위해 사용되는 속성들을 상황별로 정리한 매트릭스 테이블입니다.
| CSS 속성 및 값 | 한글 동작 방식 (Korean) | 영문 동작 방식 (English) | 브라우저 지원 현황 | 카드뉴스 활용 적합도 |
|---|---|---|---|---|
| word-break: normal | 공간 부족 시 글자 단위로 잘림 | 단어 단위로 줄바꿈 | 모든 브라우저 지원 | ❌ 부적합 (어절 중간이 자주 잘림) |
| word-break: break-all | 강제로 글자 단위 분리 (뚝뚝 끊어짐) | 단어 중간에서 강제 분리 | 모든 브라우저 지원 | ❌ 부적합 (글이 파편화되어 읽기 힘듦) |
| word-break: keep-all | 어절(단어+조사) 단위 묶음 유지 | 단어 단위로 줄바꿈 | 모든 모던 브라우저 | ⭐⭐⭐⭐⭐ 필수 (가장 완벽한 한글 가독성) |
| overflow-wrap: break-word | 긴 어절이 컨테이너를 넘치면 자름 | 긴 단어가 영역 밖을 넘치면 자름 | 대부분 지원 | ⚠️ 긴 링크나 URL 방어용으로 보조 사용 |
| overflow-wrap: anywhere | 어디서든 자를 수 있음 | 어디서든 자를 수 있음 | 최신 브라우저 | ❌ 디자인 요소로는 부적합 |
| text-wrap: balance | 각 줄의 너비와 균형을 자동 최적화 | 각 줄의 텍스트 길이를 맞춤 | 최신 크롬, 사파리 등 | ⭐⭐⭐⭐ 제목(Title) 텍스트에 강력 추천 |
| text-wrap: pretty | 마지막 줄 외톨이 글자 방지 | 마지막 줄 고아 단어(Orphan) 방지 | 크롬 117+ 지원 | ⭐⭐⭐ 본문(Body) 텍스트 정리에 유용 |
| white-space: pre-wrap | 줄바꿈 문자 보존 및 자동 줄바꿈 | 줄바꿈 문자 보존 및 자동 줄바꿈 | 모든 브라우저 지원 | ⭐⭐ 제한적으로 필요시 사용 |
⚠️ 카드뉴스 레이아웃에서 절대 피해야 할 5가지 치명적 실수
완벽한 문구를 뽑아내고도 디자인 레이아웃 세팅의 사소한 실수 하나로 인해 프로페셔널한 느낌을 다 잃게 되는 경우가 많습니다. 반드시 점검해야 할 실수 5가지입니다.
- 마지막 줄의 외톨이 글자 (Orphan Words) 방치 문장이 줄바꿈되면서 마지막 줄에 딱 두세 글자로 된 짧은 단어 하나만 남는 현상입니다. 시각적 균형을 크게 훼손하므로 텍스트 길이를 수정하거나 text-wrap: balance로 강제 교정해야 합니다.
- 비정상적인 행간(Line-height) 설정 행간이 1.2 미만으로 너무 좁으면 윗줄 글자의 하단(Descender)과 아랫줄 글자의 상단이 부딪혀 숨막히는 레이아웃이 됩니다. 반대로 1.6을 초과하여 너무 넓으면 문장들이 독립된 객체처럼 흩어져 보여 하나의 덩어리로 인지하기 어렵습니다.
- 100px 모바일 세이프 존 이탈 가장자리에 텍스트를 너무 바짝 붙이는 실수입니다. 인스타그램 홈 피드나 탐색 탭에서 썸네일로 보일 때 텍스트가 밖으로 잘려 나가거나 하단 페이지네이션 UI에 글자가 완전히 가려지는 원인이 됩니다.
- WCAG 4.5:1 대비율(Contrast Ratio) 실패 화려한 사진이나 패턴 위에 글씨를 올리면서 명도 대비를 무시하는 경우입니다. 반드시 어두운 반투명 레이어(rgba(0,0,0,0.4) 이상)를 깔거나 텍스트에 뚜렷한 드롭 섀도우를 적용하여 최소 4.5:1 이상의 대비를 확보하세요.
- 무분별한 폰트 패밀리(Font Family) 혼용 한 카드뉴스 안에 고딕, 명조, 손글씨 폰트 등 3가지 이상의 폰트를 섞어 쓰면 시선이 분산되고 난잡해집니다. 가독성이 훌륭한 산세리프(Sans-serif) 폰트 하나를 정해 두께(Weight) 차이만으로 계층을 나누는 것이 가장 세련된 방식입니다.
💡 완벽한 카드뉴스 레이아웃을 위한 5단계 실전 워크플로우
눈에 띄면서도 편안하게 읽히는 최적의 레이아웃을 빠르게 구성하기 위한 5단계 표준 프로세스입니다.
- 1단계: 1080x1080 정방형 캔버스와 세이프 존 패딩 설정 우선 CSS나 디자인 툴에서 1:1 비율의 캔버스를 생성하고, 상하좌우 최소 32px(실제 픽셀 환산 시 100px 이상)의 패딩(Padding) 구역을 잡아 텍스트가 절대 넘어가지 않게 가이드라인을 칩니다.
- 2단계: 배지, 제목, 본문의 타이포그래피 계층 구축 눈길을 끄는 상단 배지, 볼드체로 강조된 2~3줄의 거대한 제목, 그리고 그 아래 상세한 설명을 적는 본문까지 3단 구조의 시각적 계층(Visual Hierarchy)을 조립합니다.
- 3단계: 필수 CSS 속성 주입 (keep-all & balance) 제목 요소에는 word-break: keep-all과 text-wrap: balance, 본문 요소에는 word-break: keep-all을 적용하여 어절이 잘리거나 들쭉날쭉해지는 현상을 소프트웨어적으로 완벽히 통제합니다.
- 4단계: 배경 대비 검증 및 딤드(Dimmed) 처리 배경에 이미지가 삽입될 경우, 텍스트 컨테이너 배경에 어두운 그라데이션 레이어를 깔거나 CSS backdrop-filter: blur 효과를 주어 텍스트가 선명하게 튀어나오도록 베이스를 작업합니다.
- 5단계: 모바일 뷰포트 시뮬레이션 및 교정 결과물을 실제 스마트폰 화면 크기로 축소하여 바라봅니다. 글씨가 너무 작지 않은지, 줄바꿈 위치가 한국어 어법상 어색하지 않은지 꼼꼼하게 시뮬레이션하며 미세하게 자간과 마진을 조정합니다.
🔍 카드뉴스 디자이너와 마케터를 위한 7가지 전문가 팁
수백만 건의 조회수를 기록하는 바이럴 콘텐츠를 만드는 전문가들이 남몰래 사용하는 텍스트 디자인의 비밀 팁 7가지입니다.
- 제목은 최대 3줄까지만 허용하라 아무리 할 말이 많아도 헤드라인 타이틀은 3줄을 넘어가면 읽기 싫어집니다. 4줄이 넘어간다면 폰트 크기를 줄일 것이 아니라, 핵심 단어만 남기고 문장을 과감하게 쳐내야 합니다.
- 한국어 제목에는 마이너스 자간(-0.5px)을 적용하라 한글 폰트는 글자 자체의 사각형 영역이 커서 자간이 기본적으로 넓어 보입니다. 제목 텍스트에 letter-spacing: -0.5px (또는 -0.05em) 정도를 적용하면 밀도가 높아져 훨씬 정돈된 느낌을 줍니다.
- 사진 배경엔 은은한 텍스트 섀도우를 활용하라 text-shadow: 0 2px 4px rgba(0,0,0,0.3)과 같은 아주 미세한 그림자 효과는 텍스트를 배경에서 분리시켜 주어 어떤 사진 위에 올려도 글씨를 선명하게 살려냅니다.
- 핵심 키워드는 컬러 액센트로 시선을 고정시켜라 타이틀이 세 줄이라면, 가장 강조하고 싶은 단 하나의 명사나 동사에만 브랜드 포인트 컬러(예: 강렬한 네온 그린이나 코랄 레드)를 부여하여 시선을 꽂히게 만드세요.
- 모든 슬라이드의 마진과 정렬 기준을 통일하라 인스타그램 캐러셀(Carousel)을 넘길 때 텍스트의 위치가 매 장마다 위아래로 흔들리면 피로감을 줍니다. 좌측 정렬이든 중앙 정렬이든 컨테이너의 기준점은 슬라이드 끝까지 고정되어야 합니다.
- 굵기(Weight) 베리에이션이 풍부한 산세리프 폰트를 골라라 Pretendard, Noto Sans KR, 스포카 한 산스(Spoqa Han Sans)처럼 Light부터 Black까지 두께 옵션이 세분화된 폰트를 선택해야 폰트 하나만 단독으로 사용해도 다채로운 디자인이 가능합니다.
- 개발 전 레이아웃 시뮬레이터를 200% 활용하라 본 포스팅 상단의 1:1 카드뉴스 레이아웃 시뮬레이터 툴을 사용하면 코드를 만지지 않고도 가장 이상적인 줄바꿈과 폰트 크기 비율을 직관적으로 테스트할 수 있습니다.
🎯 의사결정 트리: 상황별 최적의 폰트 설정 찾기
텍스트 분량과 디자인 비율에 따라 어떤 설정을 적용해야 할지 고민될 때 다음 결정 트리를 따라가세요.
- 질문 1: 텍스트의 분량(성격)이 어떠한가?
- ➔ 짧고 굵은 제목(Title) 위주다
- 이 경우 **행간(Line-height)**은 1.3~1.35로 좁히고, text-wrap: balance를 적극 활용하여 덩어리감을 부여하세요.
- ➔ 설명이 많은 긴 본문(Body)이다
- 이 경우 **행간(Line-height)**을 1.5~1.6으로 넓히고, 가독성을 위해 text-wrap: pretty로 줄의 끝을 정돈하세요.
- ➔ 짧고 굵은 제목(Title) 위주다
- 질문 2: 캔버스의 비율과 환경이 어떠한가?
- ➔ 1:1 정방형 캔버스(인스타그램 홈)
- 공간이 매우 좁으므로 좌우 100px 안전 마진을 최우선으로 확보하고, 폰트 크기를 약간 줄이더라도 줄바꿈이 깨지지 않게 방어하세요.
- ➔ 4:5 세로형 캔버스(인스타그램 피드 최적화)
- 세로 길이가 여유로우므로 문장을 여러 줄로 나누어 배치하기 좋습니다. word-break: keep-all의 위력이 가장 잘 발휘되는 비율입니다.
- ➔ 1:1 정방형 캔버스(인스타그램 홈)
📑 핵심 실무 용어 사전 (Terminology Cheatsheet)
웹 디자이너와 마케터, 퍼블리셔가 커뮤니케이션할 때 반드시 알아두어야 할 필수 용어들입니다.
- 어절 (Word Chunk): 한국어에서 띄어쓰기를 기준으로 나누어지는 단어의 덩어리입니다. 명사와 조사가 합쳐진 하나의 의미 단위로, 카드뉴스 줄바꿈의 핵심 기준이 됩니다.
- 행간 (Line-height, Leading): 줄과 줄 사이의 수직 간격입니다. 한글 타이포그래피에서 가독성을 결정짓는 가장 중요한 요소 중 하나입니다.
- 자간 (Letter-spacing, Tracking): 글자와 글자 사이의 수평 간격입니다. 한글은 영문보다 자간을 약간 좁혀서(마이너스 자간) 조판하는 것이 세련되어 보입니다.
- word-break: keep-all: 어절이 줄바꿈될 때 문자 단위로 잘리지 않도록 보호하는 마법의 CSS 속성입니다.
- text-wrap: balance: 여러 줄로 이루어진 제목 텍스트의 길이를 브라우저가 자동으로 균등하게 배분해 주는 최신 CSS 기술입니다.
- 세이프 존 (Safe Zone): 모바일 앱 환경에서 UI 요소에 가려지지 않고 정보가 온전히 노출될 수 있는 중앙의 안전 영역을 뜻합니다.
- 외톨이 글자 (Orphan Word): 단락의 맨 마지막 줄에 단어 하나만 외롭게 덩그러니 남는 현상으로 시각적 불안정성을 유발합니다.
자주 묻는 질문
카드뉴스 타이포그래피와 관련하여 실무진들이 가장 많이 질문하는 3가지 심층 고민에 대한 명쾌한 답변입니다.
Q1. word-break: keep-all을 적용했는데도 모바일 화면이 너무 좁으면 텍스트가 컨테이너 밖으로 삐져나가거나 레이아웃이 터져버립니다. 왜 그런가요?
A1. keep-all 속성은 단어 전체를 어떻게든 보호하려 하기 때문입니다. 만약 띄어쓰기 없이 매우 긴 영어 단어(예: Supercalifragilistic...)나 띄어쓰기를 생략한 한글 긴 문장이 들어오면, 브라우저는 줄을 바꿀 기준점을 찾지 못하고 한 줄로 쭉 밀고 나갑니다. 이로 인해 박스를 뚫고 나가는 오버플로우(Overflow) 현상이 생깁니다. 이를 방지하기 위해 overflow-wrap: break-word나 최신 속성인 overflow-wrap: anywhere를 보조적으로 함께 선언해 두면, keep-all을 우선시하되 정 공간이 없으면 강제로라도 줄을 바꿔 레이아웃 붕괴를 막아줍니다.
Q2. 한글 카드뉴스를 만들 때 '은/는/이/가' 같은 조사 부분에서 줄을 바꾸고 싶은데 자동으로는 예쁘게 안 떨어집니다. 가장 좋은 방법이 무엇인가요?
A2. 소프트웨어 알고리즘만으로는 형태소 분석을 완벽히 해낼 수 없어 디자인적으로 가장 완벽한 위치(명사 구문 끝)에서 정확히 자르는 데는 한계가 있습니다. 가장 확실하고 고전적인 해결책은 HTML 상에서 줄을 바꿀 위치에 강제 줄바꿈 태그인
을 삽입하는 것입니다. 또는 해당 어절들을 태그로 감싸고 display: inline-block을 주어 하나의 절대적인 덩어리로 만들어 강제로 떨어지게 하는 방법이 있습니다. 실무에서는 주요 타이틀의 경우 브라우저에만 맡기지 않고
을 전략적으로 사용하는 것이 여전히 베스트 프랙티스입니다.
Q3. 카드뉴스에서 가장 가독성이 좋고 조합하기 편한 폰트 페어링(Font Pairing) 팁이 있나요?
A3. 카드뉴스 같이 제한된 면적에서는 화려한 폰트보다 '정보 전달력'이 1순위입니다. 한글 폰트로는 애플 산돌고딕 네오(Apple SD Gothic Neo), 프리텐다드(Pretendard), 노토 산스 KR(Noto Sans KR) 같이 중립적이면서도 두께(Weight)가 최소 5~6단계 이상 지원되는 패밀리 폰트 1종만 메인으로 사용하는 것이 좋습니다. 영문이나 숫자를 섞어 쓸 때는 영문 폰트(예: Montserrat, Poppins)를 제목에 섞어 쓰면 시각적 리듬감이 확 살아납니다. 명조체나 손글씨 폰트는 아주 짧은 감성 문구 등 '포인트' 요소로만 10% 미만으로 사용해야 가독성을 해치지 않습니다.
📖 소셜미디어 카드 디자인, 현장에서 벌어지는 아찔한 사연 세가지
소셜 미디어나 마케팅 실무에서 소셜미디어 카드를 제작해 본 분들이라면 텍스트 레이아웃 때문에 식은땀을 흘린 경험이 한 번쯤은 있을 것입니다. 다음은 실제 현업에서 가장 빈번하게 일어나는 텍스트 가독성 관련 실패 사연들입니다.
사연 1: 브랜드 신제품 출시가 조롱거리가 된 사연
패션 브랜드의 소셜 미디어 마케터인 A씨는 야심 차게 준비한 신제품 론칭 캠페인을 위해 SNS용 소셜미디어 카드 10장을 제작했습니다. 포토샵을 열 여유가 없어 급하게 웹 기반 툴로 텍스트를 얹었는데, 가장 중요한 핵심 문구인 "트렌디한 신상품이 출시되었습니다"라는 문장이 모바일 화면에서 "트렌디한신 상품이출시"라는 식으로 기괴하게 잘려버렸습니다. A씨는 CSS의 word-break: keep-all 속성이나 한국어 어절 단위 줄바꿈 규칙을 제대로 적용하지 못했던 것입니다. 결국 이 게시물은 "신상품이 가출했냐"는 팔로워들의 조롱 섞인 댓글이 달렸고, 브랜드 이미지가 실추되는 참사를 겪어야 했습니다. 한글 어절이 잘리지 않도록 제어하는 것이 얼마나 중요한지 보여주는 대표적인 사례입니다.
사연 2: 콜투액션(CTA)이 SNS UI에 가려져 사라진 사연
독립 콘텐츠 크리에이터인 B씨는 1080x1080px 크기의 완벽한 정방형 캔버스에 정보성 소셜미디어 카드를 제작했습니다. 가독성을 높이겠다는 의도로 본문 텍스트의 행간(line-height)을 무려 1.8까지 설정하고 텍스트를 빼곡히 넣었습니다. 하지만 너무 넓은 행간 때문에 전체 텍스트 블록의 세로 길이가 길어졌고, 가장 하단에 배치했던 "프로필 링크에서 확인하세요"라는 부제목과 콜투액션 문구가 SNS 앱의 하단 슬라이드 점(Carousel dots) UI 및 내비게이션 바 오버레이 영역으로 밀려나 버렸습니다. 정작 가장 중요한 정보가 모바일 기기의 세이프 존(Safe Area)을 벗어나 UI에 완전히 가려져 버렸고, 그날 게시물의 전환율은 처참한 수준을 기록하고 말았습니다.
사연 3: 한낮의 야외에서는 보이지 않는 '유령 텍스트' 사연
스타트업의 주니어 디자이너 C씨는 감각적이고 컬러풀한 라이프스타일 사진을 배경으로 깔고, 그 위에 얇은 두께의 흰색 텍스트를 그대로 올린 감성적인 소셜미디어 카드를 업로드했습니다. C씨의 레티나 모니터 작업 환경에서는 아주 세련되고 잘 보이는 듯했습니다. 그러나 다음 날, 출근길 버스 정류장에서 쏟아지는 직사광선 아래 자신의 스마트폰으로 해당 게시물을 확인한 C씨는 경악했습니다. 배경 사진과 흰색 텍스트 간의 명도 대비가 턱없이 부족하여, 텍스트가 거의 80% 이상 읽히지 않는 '유령 글씨'가 되어 있었던 것입니다. 사진 위에 텍스트를 올릴 때는 반드시 background: rgba(0,0,0,0.4)와 같은 딤드(Dimmed) 오버레이 처리를 해야만 모바일 화면과 야외 환경에서도 충분한 대비(Contrast Ratio)를 확보할 수 있다는 기본기를 놓친 대가였습니다.
🔬 핵심 기술 메커니즘: 브라우저는 한글 줄바꿈을 어떻게 처리할까?
이러한 문제들을 해결하기 위해서는 브라우저의 텍스트 렌더링 엔진과 웹 타이포그래피의 핵심 기술적 메커니즘을 정확히 이해해야 합니다. 모바일과 웹에서 텍스트가 어떻게 그려지는지 파악하면 어떤 화면 크기에서도 깨지지 않는 레이아웃을 구축할 수 있습니다.
1. 한글 타이포그래피 엔진과 word-break 속성
웹 브라우저의 텍스트 렌더링 엔진은 영어와 라틴어 기반 언어에 맞춰 발전해 왔습니다. 영어는 띄어쓰기를 기준으로 단어를 구분하기 때문에 단어 단위로 줄을 바꾸는 것이 자연스럽습니다. 반면, 한국어(그리고 CJK 언어)는 교착어로 명사 뒤에 조사가 빈틈없이 결합되는 특성을 가집니다. 기본 설정에서 브라우저는 한글을 만났을 때 띄어쓰기를 기준으로 줄을 바꾸려 하지만, 부모 컨테이너의 너비가 좁아지면 가차 없이 글자(Character) 단위로 잘라버립니다(word-break: break-all의 기본 동작과 유사). 이로 인해 "소셜미디어 카드가"라는 단어가 "카드뉴"와 "스가"로 어색하게 분리됩니다. 이를 해결하는 핵심 CSS가 바로 word-break: keep-all입니다. 이 속성을 부여하면 브라우저의 렌더링 엔진은 한글 텍스트를 CJK 특수 처리하는 대신, 띄어쓰기(공백)를 기준으로 한 단어(어절)와 그 뒤에 붙은 조사를 한 덩어리로 묶어 취급하게 됩니다. 단어 중간에서 강제로 자르는 행위를 억제하고, 무조건 다음 줄로 전체 어절을 넘겨 오독을 방지합니다.
2. 최신 CSS 텍스트 래핑 기술: text-wrap의 진화
최근 모던 웹 브라우저에 도입된 혁신적인 속성 중 하나가 text-wrap입니다.
- text-wrap: balance: 소셜미디어 카드 제목처럼 2~4줄 정도의 굵고 짧은 텍스트에 적용하면, 브라우저가 내부적으로 이진 탐색(Binary Search)이나 동적 계획법(Dynamic Programming) 알고리즘을 사용해 각 줄의 텍스트 너비 편차를 최소화합니다. 즉, 첫 줄만 무지막지하게 길고 마지막 줄에 한 단어만 남는 불균형을 막고, 시각적인 무게 중심을 맞춰 가독성을 극대화합니다. 수학적으로는 텍스트 블록의 면적 영역을 너비와 높이로 나눌 때 각 줄의 길이가 최대한 너비에 근접하게 만드는 수학적 비용 함수 연산( $ C = sum_{i=1}^{n} (W - w_i)^2 $ )을 최소화하는 과정을 거칩니다.
- text-wrap: pretty: 본문 단락에서 마지막 줄에 외톨이 단어(Orphan word)가 홀로 남는 것을 방지하는 데 특화된 속성입니다.
3. 정방형 캔버스(1:1)의 시각적 계층 구조와 황금 비율
소셜미디어 카드 캔버스는 주로 1080x1080px(또는 1080x1350px 4:5 비율)로 디자인됩니다. 한정된 사각형 캔버스 안에서 시선을 유도하는 최적의 폰트 사이즈와 행간(Line-height)의 황금 비율 계층 구조는 다음과 같습니다.
- Title (제목): 26~32px (모바일 CSS 렌더링 기준), Font-weight 800(Extra Bold). 제목은 시선을 확 끌어당겨야 하므로 행간(line-height)을 1.35 정도로 타이트하게 잡아 덩어리감을 부여합니다.
- Subtitle / Badge (부제목 및 배지): 12~14px, Font-weight 700(Bold). 제목을 보조하거나 카테고리를 알려주는 역할입니다.
- Body (본문 설명): 14
16px, Font-weight 400(Regular). 긴 설명이 들어가므로 가독성을 위해 행간을 1.51.6으로 넉넉하게 설정하여 글줄이 엉키는 현상을 막습니다.
4. SNS 모바일 세이프 존 (Safe Zone)
소셜미디어 카드는 주로 SNS 등 모바일 앱에서 소비됩니다. 1080x1080px 캔버스를 기준으로 할 때 상하좌우 가장자리에 최소 100px의 여백(Margin/Padding)을 두어야 합니다. 이는 앱 자체의 UI(프로필 아이콘, 텍스트 더보기 버튼, 페이지네이션 점 등)가 이미지를 덮는 것을 피하기 위함입니다. 핵심 텍스트와 디자인 요소는 중앙의 880x880px 영역인 '세이프 존' 내부에 안전하게 안착시켜야 사용자 인터페이스의 방해 없이 온전히 정보가 전달됩니다.
📊 CSS 텍스트 줄바꿈 속성 총정리 및 비교 테이블
웹과 소셜미디어 카드 레이아웃에서 텍스트의 줄바꿈과 정렬을 통제하기 위해 사용되는 속성들을 상황별로 정리한 매트릭스 테이블입니다.
| CSS 속성 및 값 | 한글 동작 방식 (Korean) | 영문 동작 방식 (English) | 브라우저 지원 현황 | 소셜미디어 카드 활용 적합도 |
|---|---|---|---|---|
| word-break: normal | 공간 부족 시 글자 단위로 잘림 | 단어 단위로 줄바꿈 | 모든 브라우저 지원 | ❌ 부적합 (어절 중간이 자주 잘림) |
| word-break: break-all | 강제로 글자 단위 분리 (뚝뚝 끊어짐) | 단어 중간에서 강제 분리 | 모든 브라우저 지원 | ❌ 부적합 (글이 파편화되어 읽기 힘듦) |
| word-break: keep-all | 어절(단어+조사) 단위 묶음 유지 | 단어 단위로 줄바꿈 | 모든 모던 브라우저 | ⭐⭐⭐⭐⭐ 필수 (가장 완벽한 한글 가독성) |
| overflow-wrap: break-word | 긴 어절이 컨테이너를 넘치면 자름 | 긴 단어가 영역 밖을 넘치면 자름 | 대부분 지원 | ⚠️ 긴 링크나 URL 방어용으로 보조 사용 |
| overflow-wrap: anywhere | 어디서든 자를 수 있음 | 어디서든 자를 수 있음 | 최신 브라우저 | ❌ 디자인 요소로는 부적합 |
| text-wrap: balance | 각 줄의 너비와 균형을 자동 최적화 | 각 줄의 텍스트 길이를 맞춤 | 최신 크롬, 사파리 등 | ⭐⭐⭐⭐ 제목(Title) 텍스트에 강력 추천 |
| text-wrap: pretty | 마지막 줄 외톨이 글자 방지 | 마지막 줄 고아 단어(Orphan) 방지 | 크롬 117+ 지원 | ⭐⭐⭐ 본문(Body) 텍스트 정리에 유용 |
| white-space: pre-wrap | 줄바꿈 문자 보존 및 자동 줄바꿈 | 줄바꿈 문자 보존 및 자동 줄바꿈 | 모든 브라우저 지원 | ⭐⭐ 제한적으로 필요시 사용 |
⚠️ 소셜미디어 카드 레이아웃에서 절대 피해야 할 5가지 치명적 실수
완벽한 문구를 뽑아내고도 디자인 레이아웃 세팅의 사소한 실수 하나로 인해 프로페셔널한 느낌을 다 잃게 되는 경우가 많습니다. 반드시 점검해야 할 실수 5가지입니다.
- 마지막 줄의 외톨이 글자 (Orphan Words) 방치 문장이 줄바꿈되면서 마지막 줄에 딱 두세 글자로 된 짧은 단어 하나만 남는 현상입니다. 시각적 균형을 크게 훼손하므로 텍스트 길이를 수정하거나 text-wrap: balance로 강제 교정해야 합니다.
- 비정상적인 행간(Line-height) 설정 행간이 1.2 미만으로 너무 좁으면 윗줄 글자의 하단(Descender)과 아랫줄 글자의 상단이 부딪혀 숨막히는 레이아웃이 됩니다. 반대로 1.6을 초과하여 너무 넓으면 문장들이 독립된 객체처럼 흩어져 보여 하나의 덩어리로 인지하기 어렵습니다.
- 100px 모바일 세이프 존 이탈 가장자리에 텍스트를 너무 바짝 붙이는 실수입니다. SNS 홈 피드나 탐색 탭에서 썸네일로 보일 때 텍스트가 밖으로 잘려 나가거나 하단 페이지네이션 UI에 글자가 완전히 가려지는 원인이 됩니다.
- WCAG 4.5:1 대비율(Contrast Ratio) 실패 화려한 사진이나 패턴 위에 글씨를 올리면서 명도 대비를 무시하는 경우입니다. 반드시 어두운 반투명 레이어(rgba(0,0,0,0.4) 이상)를 깔거나 텍스트에 뚜렷한 드롭 섀도우를 적용하여 최소 4.5:1 이상의 대비를 확보하세요.
- 무분별한 폰트 패밀리(Font Family) 혼용 한 소셜미디어 카드 안에 고딕, 명조, 손글씨 폰트 등 세가지 이상의 폰트를 섞어 쓰면 시선이 분산되고 난잡해집니다. 가독성이 훌륭한 산세리프(Sans-serif) 폰트 하나를 정해 두께(Weight) 차이만으로 계층을 나누는 것이 가장 세련된 방식입니다.
💡 완벽한 소셜미디어 카드 레이아웃을 위한 5단계 실전 워크플로우
눈에 띄면서도 편안하게 읽히는 최적의 레이아웃을 빠르게 구성하기 위한 5단계 표준 프로세스입니다.
- 1단계: 1080x1080 정방형 캔버스와 세이프 존 패딩 설정 우선 CSS나 디자인 툴에서 1:1 비율의 캔버스를 생성하고, 상하좌우 최소 32px(실제 픽셀 환산 시 100px 이상)의 패딩(Padding) 구역을 잡아 텍스트가 절대 넘어가지 않게 가이드라인을 칩니다.
- 2단계: 배지, 제목, 본문의 타이포그래피 계층 구축 눈길을 끄는 상단 배지, 볼드체로 강조된 2~3줄의 거대한 제목, 그리고 그 아래 상세한 설명을 적는 본문까지 3단 구조의 시각적 계층(Visual Hierarchy)을 조립합니다.
- 3단계: 필수 CSS 속성 주입 (keep-all & balance) 제목 요소에는 word-break: keep-all과 text-wrap: balance, 본문 요소에는 word-break: keep-all을 적용하여 어절이 잘리거나 들쭉날쭉해지는 현상을 소프트웨어적으로 완벽히 통제합니다.
- 4단계: 배경 대비 검증 및 딤드(Dimmed) 처리 배경에 이미지가 삽입될 경우, 텍스트 컨테이너 배경에 어두운 그라데이션 레이어를 깔거나 CSS backdrop-filter: blur 효과를 주어 텍스트가 선명하게 튀어나오도록 베이스를 작업합니다.
- 5단계: 모바일 뷰포트 시뮬레이션 및 교정 결과물을 실제 스마트폰 화면 크기로 축소하여 바라봅니다. 글씨가 너무 작지 않은지, 줄바꿈 위치가 한국어 어법상 어색하지 않은지 꼼꼼하게 시뮬레이션하며 미세하게 자간과 마진을 조정합니다.
🔍 소셜미디어 카드 디자이너와 마케터를 위한 7가지 전문가 팁
수백만 건의 조회수를 기록하는 바이럴 콘텐츠를 만드는 전문가들이 남몰래 사용하는 텍스트 디자인의 비밀 팁 7가지입니다.
- 제목은 최대 3줄까지만 허용하라 아무리 할 말이 많아도 헤드라인 타이틀은 3줄을 넘어가면 읽기 싫어집니다. 4줄이 넘어간다면 폰트 크기를 줄일 것이 아니라, 핵심 단어만 남기고 문장을 과감하게 쳐내야 합니다.
- 한국어 제목에는 마이너스 자간(-0.5px)을 적용하라 한글 폰트는 글자 자체의 사각형 영역이 커서 자간이 기본적으로 넓어 보입니다. 제목 텍스트에 letter-spacing: -0.5px (또는 -0.05em) 정도를 적용하면 밀도가 높아져 훨씬 정돈된 느낌을 줍니다.
- 사진 배경엔 은은한 텍스트 섀도우를 활용하라 text-shadow: 0 2px 4px rgba(0,0,0,0.3)과 같은 아주 미세한 그림자 효과는 텍스트를 배경에서 분리시켜 주어 어떤 사진 위에 올려도 글씨를 선명하게 살려냅니다.
- 핵심 키워드는 컬러 액센트로 시선을 고정시켜라 타이틀이 세 줄이라면, 가장 강조하고 싶은 단 하나의 명사나 동사에만 브랜드 포인트 컬러(예: 강렬한 네온 그린이나 코랄 레드)를 부여하여 시선을 꽂히게 만드세요.
- 모든 슬라이드의 마진과 정렬 기준을 통일하라 SNS 캐러셀(Carousel)을 넘길 때 텍스트의 위치가 매 장마다 위아래로 흔들리면 피로감을 줍니다. 좌측 정렬이든 중앙 정렬이든 컨테이너의 기준점은 슬라이드 끝까지 고정되어야 합니다.
- 굵기(Weight) 베리에이션이 풍부한 산세리프 폰트를 골라라 Pretendard, Noto Sans KR, 스포카 한 산스(Spoqa Han Sans)처럼 Light부터 Black까지 두께 옵션이 세분화된 폰트를 선택해야 폰트 하나만 단독으로 사용해도 다채로운 디자인이 가능합니다.
- 개발 전 레이아웃 시뮬레이터를 200% 활용하라 본 포스팅 상단의 1:1 소셜미디어 카드 레이아웃 시뮬레이터 툴을 사용하면 코드를 만지지 않고도 가장 이상적인 줄바꿈과 폰트 크기 비율을 직관적으로 테스트할 수 있습니다.
🎯 의사결정 트리: 상황별 최적의 폰트 설정 찾기
텍스트 분량과 디자인 비율에 따라 어떤 설정을 적용해야 할지 고민될 때 다음 결정 트리를 따라가세요.
- 질문 1: 텍스트의 분량(성격)이 어떠한가?
- ➔ 짧고 굵은 제목(Title) 위주다
- 이 경우 **행간(Line-height)**은 1.3~1.35로 좁히고, text-wrap: balance를 적극 활용하여 덩어리감을 부여하세요.
- ➔ 설명이 많은 긴 본문(Body)이다
- 이 경우 **행간(Line-height)**을 1.5~1.6으로 넓히고, 가독성을 위해 text-wrap: pretty로 줄의 끝을 정돈하세요.
- ➔ 짧고 굵은 제목(Title) 위주다
- 질문 2: 캔버스의 비율과 환경이 어떠한가?
- ➔ 1:1 정방형 캔버스(SNS 홈)
- 공간이 매우 좁으므로 좌우 100px 안전 마진을 최우선으로 확보하고, 폰트 크기를 약간 줄이더라도 줄바꿈이 깨지지 않게 방어하세요.
- ➔ 4:5 세로형 캔버스(SNS 피드 최적화)
- 세로 길이가 여유로우므로 문장을 여러 줄로 나누어 배치하기 좋습니다. word-break: keep-all의 위력이 가장 잘 발휘되는 비율입니다.
- ➔ 1:1 정방형 캔버스(SNS 홈)
📑 핵심 실무 용어 사전 (Terminology Cheatsheet)
웹 디자이너와 마케터, 퍼블리셔가 커뮤니케이션할 때 반드시 알아두어야 할 필수 용어들입니다.
- 어절 (Word Chunk): 한국어에서 띄어쓰기를 기준으로 나누어지는 단어의 덩어리입니다. 명사와 조사가 합쳐진 하나의 의미 단위로, 소셜미디어 카드 줄바꿈의 핵심 기준이 됩니다.
- 행간 (Line-height, Leading): 줄과 줄 사이의 수직 간격입니다. 한글 타이포그래피에서 가독성을 결정짓는 가장 중요한 요소 중 하나입니다.
- 자간 (Letter-spacing, Tracking): 글자와 글자 사이의 수평 간격입니다. 한글은 영문보다 자간을 약간 좁혀서(마이너스 자간) 조판하는 것이 세련되어 보입니다.
- word-break: keep-all: 어절이 줄바꿈될 때 문자 단위로 잘리지 않도록 보호하는 마법의 CSS 속성입니다.
- text-wrap: balance: 여러 줄로 이루어진 제목 텍스트의 길이를 브라우저가 자동으로 균등하게 배분해 주는 최신 CSS 기술입니다.
- 세이프 존 (Safe Zone): 모바일 앱 환경에서 UI 요소에 가려지지 않고 정보가 온전히 노출될 수 있는 중앙의 안전 영역을 뜻합니다.
- 외톨이 글자 (Orphan Word): 단락의 맨 마지막 줄에 단어 하나만 외롭게 덩그러니 남는 현상으로 시각적 불안정성을 유발합니다.
자주 묻는 질문
소셜미디어 카드 타이포그래피와 관련하여 실무진들이 가장 많이 질문하는 세가지 심층 고민에 대한 명쾌한 답변입니다.
Q1. word-break: keep-all을 적용했는데도 모바일 화면이 너무 좁으면 텍스트가 컨테이너 밖으로 삐져나가거나 레이아웃이 터져버립니다. 왜 그런가요?
A1. keep-all 속성은 단어 전체를 어떻게든 보호하려 하기 때문입니다. 만약 띄어쓰기 없이 매우 긴 영어 단어(예: Supercalifragilistic...)나 띄어쓰기를 생략한 한글 긴 문장이 들어오면, 브라우저는 줄을 바꿀 기준점을 찾지 못하고 한 줄로 쭉 밀고 나갑니다. 이로 인해 박스를 뚫고 나가는 오버플로우(Overflow) 현상이 생깁니다. 이를 방지하기 위해 overflow-wrap: break-word나 최신 속성인 overflow-wrap: anywhere를 보조적으로 함께 선언해 두면, keep-all을 우선시하되 정 공간이 없으면 강제로라도 줄을 바꿔 레이아웃 붕괴를 막아줍니다.
Q2. 한글 소셜미디어 카드를 만들 때 '은/는/이/가' 같은 조사 부분에서 줄을 바꾸고 싶은데 자동으로는 예쁘게 안 떨어집니다. 가장 좋은 방법이 무엇인가요?
A2. 소프트웨어 알고리즘만으로는 형태소 분석을 완벽히 해낼 수 없어 디자인적으로 가장 완벽한 위치(명사 구문 끝)에서 정확히 자르는 데는 한계가 있습니다. 가장 확실하고 고전적인 해결책은 HTML 상에서 줄을 바꿀 위치에 강제 줄바꿈 태그인
을 삽입하는 것입니다. 또는 해당 어절들을 태그로 감싸고 display: inline-block을 주어 하나의 절대적인 덩어리로 만들어 강제로 떨어지게 하는 방법이 있습니다. 실무에서는 주요 타이틀의 경우 브라우저에만 맡기지 않고
을 전략적으로 사용하는 것이 여전히 베스트 프랙티스입니다.
Q3. 소셜미디어 카드에서 가장 가독성이 좋고 조합하기 편한 폰트 페어링(Font Pairing) 팁이 있나요?
A3. 소셜미디어 카드 같이 제한된 면적에서는 화려한 폰트보다 '정보 전달력'이 1순위입니다. 한글 폰트로는 애플 산돌고딕 네오(Apple SD Gothic Neo), 프리텐다드(Pretendard), 노토 산스 KR(Noto Sans KR) 같이 중립적이면서도 두께(Weight)가 최소 5~6단계 이상 지원되는 패밀리 폰트 1종만 메인으로 사용하는 것이 좋습니다. 영문이나 숫자를 섞어 쓸 때는 영문 폰트(예: Montserrat, Poppins)를 제목에 섞어 쓰면 시각적 리듬감이 확 살아납니다. 명조체나 손글씨 폰트는 아주 짧은 감성 문구 등 '포인트' 요소로만 10% 미만으로 사용해야 가독성을 해치지 않습니다.
📖 콘텐츠 레이아웃 디자인, 현장에서 벌어지는 아찔한 사연 3가지
소셜 미디어나 마케팅 실무에서 콘텐츠 레이아웃를 제작해 본 분들이라면 텍스트 레이아웃 때문에 식은땀을 흘린 경험이 한 번쯤은 있을 것입니다. 다음은 실제 현업에서 가장 빈번하게 일어나는 텍스트 가독성 관련 실패 사연들입니다.
사연 1: 브랜드 신제품 출시가 조롱거리가 된 사연
패션 브랜드의 소셜 미디어 마케터인 A씨는 야심 차게 준비한 신제품 론칭 캠페인을 위해 모바일 피드용 콘텐츠 레이아웃 10장을 제작했습니다. 포토샵을 열 여유가 없어 급하게 웹 기반 툴로 텍스트를 얹었는데, 가장 중요한 핵심 문구인 "트렌디한 신상품이 출시되었습니다"라는 문장이 모바일 화면에서 "트렌디한신 상품이출시"라는 식으로 기괴하게 잘려버렸습니다. A씨는 CSS의 word-break: keep-all 속성이나 한국어 어절 단위 줄바꿈 규칙을 제대로 적용하지 못했던 것입니다. 결국 이 게시물은 "신상품이 가출했냐"는 팔로워들의 조롱 섞인 댓글이 달렸고, 브랜드 이미지가 실추되는 참사를 겪어야 했습니다. 한글 어절이 잘리지 않도록 제어하는 것이 얼마나 중요한지 보여주는 대표적인 사례입니다.
사연 2: 콜투액션(CTA)이 모바일 피드 UI에 가려져 사라진 사연
독립 콘텐츠 크리에이터인 B씨는 1080x1080px 크기의 완벽한 정방형 캔버스에 정보성 콘텐츠 레이아웃를 제작했습니다. 가독성을 높이겠다는 의도로 본문 텍스트의 행간(line-height)을 무려 1.8까지 설정하고 텍스트를 빼곡히 넣었습니다. 하지만 너무 넓은 행간 때문에 전체 텍스트 블록의 세로 길이가 길어졌고, 가장 하단에 배치했던 "프로필 링크에서 확인하세요"라는 부제목과 콜투액션 문구가 모바일 피드 앱의 하단 슬라이드 점(Carousel dots) UI 및 내비게이션 바 오버레이 영역으로 밀려나 버렸습니다. 정작 가장 중요한 정보가 모바일 기기의 세이프 존(Safe Area)을 벗어나 UI에 완전히 가려져 버렸고, 그날 게시물의 전환율은 처참한 수준을 기록하고 말았습니다.
사연 3: 한낮의 야외에서는 보이지 않는 '유령 텍스트' 사연
스타트업의 주니어 디자이너 C씨는 감각적이고 컬러풀한 라이프스타일 사진을 배경으로 깔고, 그 위에 얇은 두께의 흰색 텍스트를 그대로 올린 감성적인 콘텐츠 레이아웃를 업로드했습니다. C씨의 레티나 모니터 작업 환경에서는 아주 세련되고 잘 보이는 듯했습니다. 그러나 다음 날, 출근길 버스 정류장에서 쏟아지는 직사광선 아래 자신의 스마트폰으로 해당 게시물을 확인한 C씨는 경악했습니다. 배경 사진과 흰색 텍스트 간의 명도 대비가 턱없이 부족하여, 텍스트가 거의 80% 이상 읽히지 않는 '유령 글씨'가 되어 있었던 것입니다. 사진 위에 텍스트를 올릴 때는 반드시 background: rgba(0,0,0,0.4)와 같은 딤드(Dimmed) 오버레이 처리를 해야만 모바일 화면과 야외 환경에서도 충분한 대비(Contrast Ratio)를 확보할 수 있다는 기본기를 놓친 대가였습니다.
🔬 핵심 기술 메커니즘: 브라우저는 한글 줄바꿈을 어떻게 처리할까?
이러한 문제들을 해결하기 위해서는 브라우저의 텍스트 렌더링 엔진과 웹 타이포그래피의 핵심 기술적 메커니즘을 정확히 이해해야 합니다. 모바일과 웹에서 텍스트가 어떻게 그려지는지 파악하면 어떤 화면 크기에서도 깨지지 않는 레이아웃을 구축할 수 있습니다.
1. 한글 타이포그래피 엔진과 word-break 속성
웹 브라우저의 텍스트 렌더링 엔진은 영어와 라틴어 기반 언어에 맞춰 발전해 왔습니다. 영어는 띄어쓰기를 기준으로 단어를 구분하기 때문에 단어 단위로 줄을 바꾸는 것이 자연스럽습니다. 반면, 한국어(그리고 CJK 언어)는 교착어로 명사 뒤에 조사가 빈틈없이 결합되는 특성을 가집니다. 기본 설정에서 브라우저는 한글을 만났을 때 띄어쓰기를 기준으로 줄을 바꾸려 하지만, 부모 컨테이너의 너비가 좁아지면 가차 없이 글자(Character) 단위로 잘라버립니다(word-break: break-all의 기본 동작과 유사). 이로 인해 "콘텐츠 레이아웃가"라는 단어가 "카드뉴"와 "스가"로 어색하게 분리됩니다. 이를 해결하는 핵심 CSS가 바로 word-break: keep-all입니다. 이 속성을 부여하면 브라우저의 렌더링 엔진은 한글 텍스트를 CJK 특수 처리하는 대신, 띄어쓰기(공백)를 기준으로 한 단어(어절)와 그 뒤에 붙은 조사를 한 덩어리로 묶어 취급하게 됩니다. 단어 중간에서 강제로 자르는 행위를 억제하고, 무조건 다음 줄로 전체 어절을 넘겨 오독을 방지합니다.
2. 최신 CSS 텍스트 래핑 기술: text-wrap의 진화
최근 모던 웹 브라우저에 도입된 혁신적인 속성 중 하나가 text-wrap입니다.
- text-wrap: balance: 콘텐츠 레이아웃 제목처럼 2~4줄 정도의 굵고 짧은 텍스트에 적용하면, 브라우저가 내부적으로 이진 탐색(Binary Search)이나 동적 계획법(Dynamic Programming) 알고리즘을 사용해 각 줄의 텍스트 너비 편차를 최소화합니다. 즉, 첫 줄만 무지막지하게 길고 마지막 줄에 한 단어만 남는 불균형을 막고, 시각적인 무게 중심을 맞춰 가독성을 극대화합니다. 수학적으로는 텍스트 블록의 면적 영역을 너비와 높이로 나눌 때 각 줄의 길이가 최대한 너비에 근접하게 만드는 수학적 비용 함수 연산( $ C = sum_{i=1}^{n} (W - w_i)^2 $ )을 최소화하는 과정을 거칩니다.
- text-wrap: pretty: 본문 단락에서 마지막 줄에 외톨이 단어(Orphan word)가 홀로 남는 것을 방지하는 데 특화된 속성입니다.
3. 정방형 캔버스(1:1)의 시각적 계층 구조와 황금 비율
콘텐츠 레이아웃 캔버스는 주로 1080x1080px(또는 1080x1350px 4:5 비율)로 디자인됩니다. 한정된 사각형 캔버스 안에서 시선을 유도하는 최적의 폰트 사이즈와 행간(Line-height)의 황금 비율 계층 구조는 다음과 같습니다.
- Title (제목): 26~32px (모바일 CSS 렌더링 기준), Font-weight 800(Extra Bold). 제목은 시선을 확 끌어당겨야 하므로 행간(line-height)을 1.35 정도로 타이트하게 잡아 덩어리감을 부여합니다.
- Subtitle / Badge (부제목 및 배지): 12~14px, Font-weight 700(Bold). 제목을 보조하거나 카테고리를 알려주는 역할입니다.
- Body (본문 설명): 14
16px, Font-weight 400(Regular). 긴 설명이 들어가므로 가독성을 위해 행간을 1.51.6으로 넉넉하게 설정하여 글줄이 엉키는 현상을 막습니다.
4. 모바일 피드 모바일 세이프 존 (Safe Zone)
콘텐츠 레이아웃는 주로 모바일 피드 등 모바일 앱에서 소비됩니다. 1080x1080px 캔버스를 기준으로 할 때 상하좌우 가장자리에 최소 100px의 여백(Margin/Padding)을 두어야 합니다. 이는 앱 자체의 UI(프로필 아이콘, 텍스트 더보기 버튼, 페이지네이션 점 등)가 이미지를 덮는 것을 피하기 위함입니다. 핵심 텍스트와 디자인 요소는 중앙의 880x880px 영역인 '세이프 존' 내부에 안전하게 안착시켜야 사용자 인터페이스의 방해 없이 온전히 정보가 전달됩니다.
📊 CSS 텍스트 줄바꿈 속성 총정리 및 비교 테이블
웹과 콘텐츠 레이아웃 레이아웃에서 텍스트의 줄바꿈과 정렬을 통제하기 위해 사용되는 속성들을 상황별로 정리한 매트릭스 테이블입니다.
| CSS 속성 및 값 | 한글 동작 방식 (Korean) | 영문 동작 방식 (English) | 브라우저 지원 현황 | 콘텐츠 레이아웃 활용 적합도 |
|---|---|---|---|---|
| word-break: normal | 공간 부족 시 글자 단위로 잘림 | 단어 단위로 줄바꿈 | 모든 브라우저 지원 | ❌ 부적합 (어절 중간이 자주 잘림) |
| word-break: break-all | 강제로 글자 단위 분리 (뚝뚝 끊어짐) | 단어 중간에서 강제 분리 | 모든 브라우저 지원 | ❌ 부적합 (글이 파편화되어 읽기 힘듦) |
| word-break: keep-all | 어절(단어+조사) 단위 묶음 유지 | 단어 단위로 줄바꿈 | 모든 모던 브라우저 | ⭐⭐⭐⭐⭐ 필수 (가장 완벽한 한글 가독성) |
| overflow-wrap: break-word | 긴 어절이 컨테이너를 넘치면 자름 | 긴 단어가 영역 밖을 넘치면 자름 | 대부분 지원 | ⚠️ 긴 링크나 URL 방어용으로 보조 사용 |
| overflow-wrap: anywhere | 어디서든 자를 수 있음 | 어디서든 자를 수 있음 | 최신 브라우저 | ❌ 디자인 요소로는 부적합 |
| text-wrap: balance | 각 줄의 너비와 균형을 자동 최적화 | 각 줄의 텍스트 길이를 맞춤 | 최신 크롬, 사파리 등 | ⭐⭐⭐⭐ 제목(Title) 텍스트에 강력 추천 |
| text-wrap: pretty | 마지막 줄 외톨이 글자 방지 | 마지막 줄 고아 단어(Orphan) 방지 | 크롬 117+ 지원 | ⭐⭐⭐ 본문(Body) 텍스트 정리에 유용 |
| white-space: pre-wrap | 줄바꿈 문자 보존 및 자동 줄바꿈 | 줄바꿈 문자 보존 및 자동 줄바꿈 | 모든 브라우저 지원 | ⭐⭐ 제한적으로 필요시 사용 |
⚠️ 콘텐츠 레이아웃 레이아웃에서 절대 피해야 할 5가지 치명적 실수
완벽한 문구를 뽑아내고도 디자인 레이아웃 세팅의 사소한 실수 하나로 인해 프로페셔널한 느낌을 다 잃게 되는 경우가 많습니다. 반드시 점검해야 할 실수 5가지입니다.
- 마지막 줄의 외톨이 글자 (Orphan Words) 방치 문장이 줄바꿈되면서 마지막 줄에 딱 두세 글자로 된 짧은 단어 하나만 남는 현상입니다. 시각적 균형을 크게 훼손하므로 텍스트 길이를 수정하거나 text-wrap: balance로 강제 교정해야 합니다.
- 비정상적인 행간(Line-height) 설정 행간이 1.2 미만으로 너무 좁으면 윗줄 글자의 하단(Descender)과 아랫줄 글자의 상단이 부딪혀 숨막히는 레이아웃이 됩니다. 반대로 1.6을 초과하여 너무 넓으면 문장들이 독립된 객체처럼 흩어져 보여 하나의 덩어리로 인지하기 어렵습니다.
- 100px 모바일 세이프 존 이탈 가장자리에 텍스트를 너무 바짝 붙이는 실수입니다. 모바일 피드 홈 피드나 탐색 탭에서 썸네일로 보일 때 텍스트가 밖으로 잘려 나가거나 하단 페이지네이션 UI에 글자가 완전히 가려지는 원인이 됩니다.
- WCAG 4.5:1 대비율(Contrast Ratio) 실패 화려한 사진이나 패턴 위에 글씨를 올리면서 명도 대비를 무시하는 경우입니다. 반드시 어두운 반투명 레이어(rgba(0,0,0,0.4) 이상)를 깔거나 텍스트에 뚜렷한 드롭 섀도우를 적용하여 최소 4.5:1 이상의 대비를 확보하세요.
- 무분별한 폰트 패밀리(Font Family) 혼용 한 콘텐츠 레이아웃 안에 고딕, 명조, 손글씨 폰트 등 3가지 이상의 폰트를 섞어 쓰면 시선이 분산되고 난잡해집니다. 가독성이 훌륭한 산세리프(Sans-serif) 폰트 하나를 정해 두께(Weight) 차이만으로 계층을 나누는 것이 가장 세련된 방식입니다.
💡 완벽한 콘텐츠 레이아웃 레이아웃을 위한 5단계 실전 워크플로우
눈에 띄면서도 편안하게 읽히는 최적의 레이아웃을 빠르게 구성하기 위한 5단계 표준 프로세스입니다.
- 1단계: 1080x1080 정방형 캔버스와 세이프 존 패딩 설정 우선 CSS나 디자인 툴에서 1:1 비율의 캔버스를 생성하고, 상하좌우 최소 32px(실제 픽셀 환산 시 100px 이상)의 패딩(Padding) 구역을 잡아 텍스트가 절대 넘어가지 않게 가이드라인을 칩니다.
- 2단계: 배지, 제목, 본문의 타이포그래피 계층 구축 눈길을 끄는 상단 배지, 볼드체로 강조된 2~3줄의 거대한 제목, 그리고 그 아래 상세한 설명을 적는 본문까지 3단 구조의 시각적 계층(Visual Hierarchy)을 조립합니다.
- 3단계: 필수 CSS 속성 주입 (keep-all & balance) 제목 요소에는 word-break: keep-all과 text-wrap: balance, 본문 요소에는 word-break: keep-all을 적용하여 어절이 잘리거나 들쭉날쭉해지는 현상을 소프트웨어적으로 완벽히 통제합니다.
- 4단계: 배경 대비 검증 및 딤드(Dimmed) 처리 배경에 이미지가 삽입될 경우, 텍스트 컨테이너 배경에 어두운 그라데이션 레이어를 깔거나 CSS backdrop-filter: blur 효과를 주어 텍스트가 선명하게 튀어나오도록 베이스를 작업합니다.
- 5단계: 모바일 뷰포트 시뮬레이션 및 교정 결과물을 실제 스마트폰 화면 크기로 축소하여 바라봅니다. 글씨가 너무 작지 않은지, 줄바꿈 위치가 한국어 어법상 어색하지 않은지 꼼꼼하게 시뮬레이션하며 미세하게 자간과 마진을 조정합니다.
🔍 콘텐츠 레이아웃 디자이너와 마케터를 위한 7가지 전문가 팁
수백만 건의 조회수를 기록하는 바이럴 콘텐츠를 만드는 전문가들이 남몰래 사용하는 텍스트 디자인의 비밀 팁 7가지입니다.
- 제목은 최대 3줄까지만 허용하라 아무리 할 말이 많아도 헤드라인 타이틀은 3줄을 넘어가면 읽기 싫어집니다. 4줄이 넘어간다면 폰트 크기를 줄일 것이 아니라, 핵심 단어만 남기고 문장을 과감하게 쳐내야 합니다.
- 한국어 제목에는 마이너스 자간(-0.5px)을 적용하라 한글 폰트는 글자 자체의 사각형 영역이 커서 자간이 기본적으로 넓어 보입니다. 제목 텍스트에 letter-spacing: -0.5px (또는 -0.05em) 정도를 적용하면 밀도가 높아져 훨씬 정돈된 느낌을 줍니다.
- 사진 배경엔 은은한 텍스트 섀도우를 활용하라 text-shadow: 0 2px 4px rgba(0,0,0,0.3)과 같은 아주 미세한 그림자 효과는 텍스트를 배경에서 분리시켜 주어 어떤 사진 위에 올려도 글씨를 선명하게 살려냅니다.
- 핵심 키워드는 컬러 액센트로 시선을 고정시켜라 타이틀이 세 줄이라면, 가장 강조하고 싶은 단 하나의 명사나 동사에만 브랜드 포인트 컬러(예: 강렬한 네온 그린이나 코랄 레드)를 부여하여 시선을 꽂히게 만드세요.
- 모든 슬라이드의 마진과 정렬 기준을 통일하라 모바일 피드 캐러셀(Carousel)을 넘길 때 텍스트의 위치가 매 장마다 위아래로 흔들리면 피로감을 줍니다. 좌측 정렬이든 중앙 정렬이든 컨테이너의 기준점은 슬라이드 끝까지 고정되어야 합니다.
- 굵기(Weight) 베리에이션이 풍부한 산세리프 폰트를 골라라 Pretendard, Noto Sans KR, 스포카 한 산스(Spoqa Han Sans)처럼 Light부터 Black까지 두께 옵션이 세분화된 폰트를 선택해야 폰트 하나만 단독으로 사용해도 다채로운 디자인이 가능합니다.
- 개발 전 레이아웃 시뮬레이터를 200% 활용하라 본 포스팅 상단의 1:1 콘텐츠 레이아웃 레이아웃 시뮬레이터 툴을 사용하면 코드를 만지지 않고도 가장 이상적인 줄바꿈과 폰트 크기 비율을 직관적으로 테스트할 수 있습니다.
🎯 의사결정 트리: 상황별 최적의 폰트 설정 찾기
텍스트 분량과 디자인 비율에 따라 어떤 설정을 적용해야 할지 고민될 때 다음 결정 트리를 따라가세요.
- 질문 1: 텍스트의 분량(성격)이 어떠한가?
- ➔ 짧고 굵은 제목(Title) 위주다
- 이 경우 **행간(Line-height)**은 1.3~1.35로 좁히고, text-wrap: balance를 적극 활용하여 덩어리감을 부여하세요.
- ➔ 설명이 많은 긴 본문(Body)이다
- 이 경우 **행간(Line-height)**을 1.5~1.6으로 넓히고, 가독성을 위해 text-wrap: pretty로 줄의 끝을 정돈하세요.
- ➔ 짧고 굵은 제목(Title) 위주다
- 질문 2: 캔버스의 비율과 환경이 어떠한가?
- ➔ 1:1 정방형 캔버스(모바일 피드 홈)
- 공간이 매우 좁으므로 좌우 100px 안전 마진을 최우선으로 확보하고, 폰트 크기를 약간 줄이더라도 줄바꿈이 깨지지 않게 방어하세요.
- ➔ 4:5 세로형 캔버스(모바일 피드 피드 최적화)
- 세로 길이가 여유로우므로 문장을 여러 줄로 나누어 배치하기 좋습니다. word-break: keep-all의 위력이 가장 잘 발휘되는 비율입니다.
- ➔ 1:1 정방형 캔버스(모바일 피드 홈)
📑 핵심 실무 용어 사전 (Terminology Cheatsheet)
웹 디자이너와 마케터, 퍼블리셔가 커뮤니케이션할 때 반드시 알아두어야 할 필수 용어들입니다.
- 어절 (Word Chunk): 한국어에서 띄어쓰기를 기준으로 나누어지는 단어의 덩어리입니다. 명사와 조사가 합쳐진 하나의 의미 단위로, 콘텐츠 레이아웃 줄바꿈의 핵심 기준이 됩니다.
- 행간 (Line-height, Leading): 줄과 줄 사이의 수직 간격입니다. 한글 타이포그래피에서 가독성을 결정짓는 가장 중요한 요소 중 하나입니다.
- 자간 (Letter-spacing, Tracking): 글자와 글자 사이의 수평 간격입니다. 한글은 영문보다 자간을 약간 좁혀서(마이너스 자간) 조판하는 것이 세련되어 보입니다.
- word-break: keep-all: 어절이 줄바꿈될 때 문자 단위로 잘리지 않도록 보호하는 마법의 CSS 속성입니다.
- text-wrap: balance: 여러 줄로 이루어진 제목 텍스트의 길이를 브라우저가 자동으로 균등하게 배분해 주는 최신 CSS 기술입니다.
- 세이프 존 (Safe Zone): 모바일 앱 환경에서 UI 요소에 가려지지 않고 정보가 온전히 노출될 수 있는 중앙의 안전 영역을 뜻합니다.
- 외톨이 글자 (Orphan Word): 단락의 맨 마지막 줄에 단어 하나만 외롭게 덩그러니 남는 현상으로 시각적 불안정성을 유발합니다.
자주 묻는 질문
콘텐츠 레이아웃 타이포그래피와 관련하여 실무진들이 가장 많이 질문하는 3가지 심층 고민에 대한 명쾌한 답변입니다.
Q1. word-break: keep-all을 적용했는데도 모바일 화면이 너무 좁으면 텍스트가 컨테이너 밖으로 삐져나가거나 레이아웃이 터져버립니다. 왜 그런가요?
A1. keep-all 속성은 단어 전체를 어떻게든 보호하려 하기 때문입니다. 만약 띄어쓰기 없이 매우 긴 영어 단어(예: Supercalifragilistic...)나 띄어쓰기를 생략한 한글 긴 문장이 들어오면, 브라우저는 줄을 바꿀 기준점을 찾지 못하고 한 줄로 쭉 밀고 나갑니다. 이로 인해 박스를 뚫고 나가는 오버플로우(Overflow) 현상이 생깁니다. 이를 방지하기 위해 overflow-wrap: break-word나 최신 속성인 overflow-wrap: anywhere를 보조적으로 함께 선언해 두면, keep-all을 우선시하되 정 공간이 없으면 강제로라도 줄을 바꿔 레이아웃 붕괴를 막아줍니다.
Q2. 한글 콘텐츠 레이아웃를 만들 때 '은/는/이/가' 같은 조사 부분에서 줄을 바꾸고 싶은데 자동으로는 예쁘게 안 떨어집니다. 가장 좋은 방법이 무엇인가요?
A2. 소프트웨어 알고리즘만으로는 형태소 분석을 완벽히 해낼 수 없어 디자인적으로 가장 완벽한 위치(명사 구문 끝)에서 정확히 자르는 데는 한계가 있습니다. 가장 확실하고 고전적인 해결책은 HTML 상에서 줄을 바꿀 위치에 강제 줄바꿈 태그인
을 삽입하는 것입니다. 또는 해당 어절들을 태그로 감싸고 display: inline-block을 주어 하나의 절대적인 덩어리로 만들어 강제로 떨어지게 하는 방법이 있습니다. 실무에서는 주요 타이틀의 경우 브라우저에만 맡기지 않고
을 전략적으로 사용하는 것이 여전히 베스트 프랙티스입니다.
Q3. 콘텐츠 레이아웃에서 가장 가독성이 좋고 조합하기 편한 폰트 페어링(Font Pairing) 팁이 있나요?
A3. 콘텐츠 레이아웃 같이 제한된 면적에서는 화려한 폰트보다 '정보 전달력'이 1순위입니다. 한글 폰트로는 애플 산돌고딕 네오(Apple SD Gothic Neo), 프리텐다드(Pretendard), 노토 산스 KR(Noto Sans KR) 같이 중립적이면서도 두께(Weight)가 최소 5~6단계 이상 지원되는 패밀리 폰트 1종만 메인으로 사용하는 것이 좋습니다. 영문이나 숫자를 섞어 쓸 때는 영문 폰트(예: Montserrat, Poppins)를 제목에 섞어 쓰면 시각적 리듬감이 확 살아납니다. 명조체나 손글씨 폰트는 아주 짧은 감성 문구 등 '포인트' 요소로만 10% 미만으로 사용해야 가독성을 해치지 않습니다.
