CSS text-overflow: reticências, line clamp e quebra de palavras

Laboratório de overflow e truncamento de texto em CSS

CSS text-overflow: reticências, line clamp, word-break | We.Inc

Redimensione uma caixa com uma URL longa e uma palavra composta alemã e teste overflow, text-overflow: ellipsis, line clamp, word-break, overflow-wrap e hyphens ao vivo, com classes Tailwind.

Conteúdo longo escapa da caixa quando ela é pequena demais. O overflow decide o que acontece com o excesso: visible, hidden, clip, scroll ou auto. Para uma linha que termina em reticências, combine white-space: nowrap, overflow: hidden e text-overflow: ellipsis. Para várias linhas, use -webkit-line-clamp. Para dividir palavras que não quebram, use overflow-wrap: anywhere.

Escolha a receita para o problema

Arraste o controle de largura e a caixa de exemplo encolhe em volta de um endereço web real, da palavra Donaudampfschifffahrtsgesellschaft e de uma frase normal. Cada opção de overflow, quebra e clamp é um botão, o resultado é instantâneo e o CSS necessário aparece escrito logo abaixo.

Perguntas frequentes

Por que o text-overflow: ellipsis não funciona?

Normalmente falta um dos parceiros dele. O elemento precisa ser de bloco ou inline-block com largura limitada, ter overflow definido como hidden ou clip e manter o texto em uma linha com white-space: nowrap. Em um item flex ou grid, adicione também min-width: 0 para que o item possa encolher.

O line-clamp funciona sem o prefixo -webkit-?

A forma com prefixo, -webkit-line-clamp junto com display: -webkit-box e -webkit-box-orient: vertical, funciona em todos os principais navegadores atuais e é o que o Tailwind gera. A propriedade line-clamp sem prefixo, do CSS Overflow Level 4, ainda está chegando aos navegadores, então confira o caniuse antes de depender só dela.

Qual a diferença entre word-break e overflow-wrap?

O overflow-wrap só quebra uma palavra quando ela transbordaria, então as palavras normais quebram normalmente. O word-break: break-all deixa o navegador quebrar entre quaisquer duas letras em qualquer lugar, o que gera um texto irregular e difícil de ler. O word-break: keep-all serve para texto em chinês, japonês e coreano, quando você não quer quebras dentro das palavras.

O que o overflow: clip faz que o hidden não faz?

Os dois cortam o excesso. O hidden ainda cria um contêiner de rolagem, então um script pode rolá-lo e ele afeta o position: sticky dentro dele. O clip proíbe qualquer rolagem, e com overflow-clip-margin você pode deixar o conteúdo passar alguns pixels da borda antes de cortar.

Como truncar texto dentro de uma célula de tabela?

Defina table-layout: fixed na tabela e uma largura nas colunas, e depois aplique o trio de sempre, nowrap, hidden e ellipsis, à célula. Sem o layout fixo, a coluna simplesmente cresce para caber o texto. Outra opção é max-width: 0 com width: 100% na célula.

Os cinco valores de overflow

Quebrar palavras que não cabem

Truncamento e acessibilidade

Valores de overflow comparados

O que cada valor de overflow faz

Reticências em uma linha

A receita de reticências em três linhas

Remova qualquer uma das três declarações e os pontinhos somem. O atributo title mantém o texto completo disponível.

Reticências dentro de uma linha flex

O item do meio recebe min-width: 0 para poder encolher abaixo da largura do texto. Sem isso, é a linha que transborda.

Clamp em várias linhas

Limitar a descrição de um card a três linhas

O padrão com prefixo abaixo é o que tem amplo suporte. A declaração line-clamp sem prefixo é adicionada para os navegadores que já a entendem.

word-break vs overflow-wrap vs hyphens

Quebrar palavras longas

A mesma URL com quatro configurações de quebra

Cada caixa tem 160px de largura. Só a última é deixada transbordar.

Truncar células de tabela

Layout de tabela fixo com células com reticências

table-layout: fixed faz as larguras das colunas prevalecerem sobre o conteúdo, para que as reticências possam entrar em ação.

URL longa

Palavra composta alemã

Parágrafo

Grãos de café frescos são torrados toda terça-feira e enviados na mesma tarde, então chegam à maioria dos endereços em até três dias após a torra, enquanto o sabor ainda está no auge.

Reticências sozinhas precisam de white-space: nowrap (ou de um line clamp).

As reticências precisam de overflow definido como hidden ou clip.

Um line clamp precisa de overflow: hidden para cortar o resto.

Laboratório de overflow

Texto de exemplo

Largura da caixa: {n}px

Quebra de palavras

Line clamp:

{n} linhas

Copiar CSS

Comece grátis · Sem cartão de crédito

Relacionados: Guias

Produto

Para quem é

Recursos

Recursos

Empresa

Mapa do site