text-overflow

넘치는 텍스트를 어떻게 표시할지 결정합니다. 말줄임표(...)로 잘린 텍스트를 표현하는 것이 가장 일반적인 용도이며, toe는 웹에서 가장 많이 사용되는 텍스트 절단 방법입니다.

클래스 목록

클래스CSS설명
toetext-overflow: ellipsis넘치는 텍스트를 ... 으로 표시
toctext-overflow: clip기본값. 넘치는 텍스트를 표시 없이 자름

한 줄 말줄임 패턴

wsn oh toe — 이 세 클래스의 조합이 텍스트 말줄임의 핵심입니다. 세 가지가 모두 있어야 동작합니다.

클래스역할빠지면?
wsn줄바꿈 금지 (white-space: nowrap)텍스트가 줄바꿈되어 넘치지 않음
oh넘침 숨김 (overflow: hidden)텍스트가 컨테이너 밖으로 넘침
toe말줄임표 표시 (text-overflow: ellipsis)잘리지만 ... 없이 잘림

필수 조건

toe는 단독으로 동작하지 않습니다. 반드시 wsn(줄바꿈 금지) + oh(넘침 숨김)와 함께 사용해야 합니다.

<!-- Basic single-line truncation -->
<div class="w200px wsn oh toe">
  Very long text that gets truncated with an ellipsis
</div>
<!-- wsn: white-space: nowrap
     oh:  overflow: hidden
     toe: text-overflow: ellipsis -->

시각적 비교

같은 긴 텍스트를 고정 너비 컨테이너에 넣었을 때 각 방식의 차이입니다.

말줄임 없음 (기본) — 기본 상태

이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다.

텍스트가 줄바꿈되어 여러 줄로 표시됩니다

wsn만 적용 — wsn

이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다.

줄바꿈이 금지되어 컨테이너 밖으로 넘칩니다

wsn + oh — wsn oh

이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다.

넘친 텍스트가 숨겨지지만 말줄임표가 없습니다

wsn + oh + toe (완성) — wsn oh toe

이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다.

넘친 텍스트가 ...으로 표시됩니다 — 이것이 올바른 패턴입니다

클래스별 상세

toetext-overflow: ellipsis

넘치는 텍스트를 ...으로 표시합니다. 카드 제목, 테이블 셀, 리스트 항목 등 고정 너비 안에 긴 텍스트를 넣어야 할 때 가장 많이 사용합니다.

<!-- Single-line ellipsis (most common pattern) -->
<p class="wsn oh toe">
  If this text is longer than the container, it is truncated with ...
</p>

<!-- Card Title -->
<div class="w30rem bg18181B p2rem br8px">
  <h3 class="wsn oh toe fs16px fw700 cFAFAFA mb8px">
    Very long card titles are truncated with ellipsis
  </h3>
  <p class="c71717A fs14px lh1-7">Card description</p>
</div>

<!-- Used in table cells -->
<td class="wsn oh toe maxw20rem">
  Long data does not break the table layout
</td>

<!-- Used in flex children -->
<div class="df aic gap12px">
  <img class="w4rem h4rem br50p" />
  <span class="fg1 wsn oh toe">Long username or email address</span>
</div>

자주 쓰는 조합

wsn oh toe한 줄 말줄임 (필수 3종 세트)
wsn oh toe w100p부모 너비에 맞춘 말줄임
wsn oh toe maxw30rem최대 너비 제한 + 말줄임
db wsn oh toe블록 요소로 변환 후 말줄임

toctext-overflow: clip

기본값입니다. 넘치는 텍스트를 표시 없이 잘라냅니다. 말줄임표가 필요 없고 단순히 잘리면 되는 경우에 사용합니다.

<!-- Default: clip without indicator -->
<div class="w20rem oh">
  <p class="wsn toc">
    Overflowing text is clipped but ... is not shown
  </p>
</div>

멀티라인 말줄임 (line-clamp)

toe는 한 줄 말줄임만 가능합니다. 여러 줄에서 말줄임이 필요하면 lc(line-clamp) 클래스를 사용합니다.

<!-- 2-line ellipsis -->
<p class="lc2-20px">
  Long text is shown up to 2 lines, the rest is truncated with ...
  This pattern is suitable for card descriptions, post previews, etc.
</p>

<!-- 3-line ellipsis -->
<p class="lc3-1-5rem">
  Long text is shown up to 3 lines. Setting line-height to 1.5rem
  allows for precise height calculation.
</p>

2줄 말줄임 — lc2-20px

이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다. 이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다.

2줄까지 표시하고 나머지는 말줄임

3줄 말줄임 — lc3-1-5rem

이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다. 이것은 매우 긴 텍스트입니다. 컨테이너 너비를 초과하면 text-overflow 속성에 따라 다르게 처리됩니다. Atomic CSS에서 말줄임 처리는 wsn oh toe 조합으로 간단하게 구현할 수 있습니다.

3줄까지 표시하고 나머지는 말줄임

클래스설명
lc2-20px2줄 말줄임, line-height: 20px
lc3-1-5rem3줄 말줄임, line-height: 1.5rem
lc4-2rem4줄 말줄임, line-height: 2rem

팁 & 주의사항

toe는 혼자 동작하지 않음

toe는 반드시 wsn + oh와 함께 사용해야 합니다. 이 셋 중 하나라도 빠지면 말줄임이 동작하지 않습니다.

고정 너비가 필요

말줄임이 동작하려면 요소의 너비가 제한되어야 합니다. w100p, maxw30rem 등으로 너비를 지정하거나, flex/grid 자식이면 자동으로 제한됩니다.

한 줄 vs 여러 줄

한 줄 말줄임은 wsn oh toe, 여러 줄 말줄임은 lc3-1-5rem 같은 line-clamp 클래스를 사용하세요. line-clamp은 wsn, oh, toe를 개별로 지정할 필요 없이 자체적으로 처리합니다.