Skip to content

CSS: truncate

.--truncate — Truncamento com reticências usando corte por linhas controlado por --lines — utilizável sozinho ou encadeado em qualquer componente (.instui-button.--truncate).

A classe base usa display: -webkit-box e lê a propriedade customizada --lines para limitar o texto a um número fixo de linhas antes de encerrá-lo com reticências.

Source: index.ts

TIP

Requisito JS — Este componente não traz CSS próprio — sua marcação e comportamento provêm inteiramente de @pantoken/interactions. Seu modificador --max-lines-auto é dirigido por esse comportamento. Veja a tabela de modificadores abaixo.

Uso

css
@import "@pantoken/components/utilities.css";

Exemplos

html
<div class="--truncate">This text is clamped to one line by default and ends in an ellipsis.</div>
<div class="--truncate" style="--lines: 3">This text is clamped to three lines and ends in an ellipsis.</div>
<button class="instui-button --truncate">…</button>

Modificadores

ModificadorDescrição
.--lines-1Alias de --max-lines-1.
.--lines-2Alias de --max-lines-2.
.--lines-3Alias de --max-lines-3.
.--lines-4Alias de --max-lines-4.
.--lines-5Alias de --max-lines-5.
.--max-lines-1Limitar a uma linha (padrão).
.--max-lines-2Limitar a duas linhas.
.--max-lines-3Limitar a três linhas.
.--max-lines-4Limitar a quatro linhas.
.--max-lines-5Limitar a cinco linhas.
.--max-lines-autoInteraction — — Clamp to the number of lines that fit in the container, based on its height and the line height of the text.
.--truncateHabilita truncamento e corte por linhas no elemento alvo.
.--truncate-character(padrão) Truncar no nível de caractere.
.--truncate-wordTruncar no nível de palavra.

Propriedades personalizadas

PropriedadeTipoPadrãoDescrição
--ellipsisclip | ellipsis | <string> | fadeellipsis
--lines<integer>1

Tokens consumidos

TokenTipoValor
--instui-component-truncate-text-font-family[ <font-family-name> | <generic-font-family> ]#Atkinson Hyperlegible Next, "Helvetica Neue", Helvetica, Arial, sans-serif
--instui-line-height-paragraph-base<percentage>150%

Compatibilidade do navegador

  • O corte por linhas depende de -webkit-line-clamp com display: -webkit-box, emparelhado com o padrão line-clamp.

Relacionado

  • text — Tipografia do corpo que isso trunca.