메저 (한 줄 글자 수)

Measure

한 줄에 들어가는 글자 수. 너무 짧으면 시선이 자주 끊기고, 너무 길면 다음 줄을 찾기 어려워집니다.

다른 이름: 줄 길이Line length
···
html
<div class="stage">
  <p class="col" id="p">타이포그래피에서 한 줄에 담기는 글자 수를 measure(가독 폭)라고 부릅니다. 너무 짧으면 시선이 자주 끊기고, 너무 길면 다음 줄을 찾기 어렵습니다.</p>
  <div class="readout">≈ <span id="ch">0</span>자/줄 · <span id="verdict">–</span></div>
</div>
css
.stage{width:100%;display:grid;justify-items:center;padding:0 8px}
.col{font-size:13px;line-height:1.6;font-family:-apple-system,system-ui,"Apple SD Gothic Neo",sans-serif;color:var(--fg);margin:0;
  animation:resize 6s ease-in-out infinite;overflow-wrap:break-word;max-width:94%}
@keyframes resize{0%{width:110px}45%{width:340px}100%{width:520px}}
.readout{margin-top:14px;font:11px ui-monospace,Menlo,monospace;color:var(--muted)}
#verdict{font-weight:700}
js
const p = document.getElementById('p');
const chEl = document.getElementById('ch');
const verdict = document.getElementById('verdict');
const ctx = document.createElement('canvas').getContext('2d');
ctx.font = '13px -apple-system,system-ui,sans-serif';
const avg = ctx.measureText('가나다라마바사아자차카타파하ABCDEFGHIJ').width / 20;
function tick(){
  const w = p.getBoundingClientRect().width;
  const ch = Math.round(w / avg);
  chEl.textContent = ch;
  let v = '적당', color = 'var(--accent-3)';
  if (ch < 18) { v = '너무 좁음'; color = 'var(--accent-2)'; }
  else if (ch > 55) { v = '너무 넓음'; color = 'var(--accent-2)'; }
  verdict.textContent = v;
  verdict.style.color = color;
  requestAnimationFrame(tick);
}
tick();

타이포그래피 격언으로 흔히 영문은 한 줄에 "45~75자"(이상적으로는 약 66자)가 읽기 좋다고 합니다. 이보다 짧으면 시선이 줄바꿈을 너무 자주 하느라 리듬이 끊기고, 이보다 길면 줄을 다 읽고 다음 줄의 시작을 찾는 데 시간이 걸려 같은 줄을 두 번 읽는 실수(줄 놓침)가 늘어납니다.

CSS에서는 `max-width`를 `ch` 단위(숫자 "0"의 폭 기준)로 주면 폰트·크기가 바뀌어도 글자 수 기준을 대략 유지할 수 있습니다. 예: `max-width: 65ch`.

한글은 한 글자(음절)가 라틴 알파벳보다 정보량이 많아 같은 "글자 수"라도 더 빽빽하게 느껴지므로, 한글 본문은 영문 기준(66자)보다 적은 30~40자 안팎을 적정선으로 잡는 경우가 많습니다.

언제 쓰나

긴 본문 문단의 컨테이너 폭을 정할 때 항상. 카드·사이드바처럼 애초에 폭이 좁은 곳은 신경 쓰지 않아도 됩니다.