Tente isto, penso que este trabalho vontade para algo como "AAAAAAAAAAAAAAAAAAAAAARRRRRRRRRRRRRRRRRRRRRRGGGGGGGGGGGGGGGGGGGGG" produzirá
AARRRRRRRRRRRRRRRRRRRR
RRGGGGGGGGGGGGGGGGGGGG
G
Peguei meu exemplo em alguns sites diferentes no Google. Eu testei isso no ff 5.0, IE 8.0 e Chrome 10.
.wrapword {
white-space: -moz-pre-wrap !important; /* Mozilla, since 1999 */
white-space: -webkit-pre-wrap; /* Chrome & Safari */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
white-space: pre-wrap; /* CSS3 */
word-wrap: break-word; /* Internet Explorer 5.5+ */
word-break: break-all;
white-space: normal;
}
<table style="table-layout:fixed; width:400px">
<tr>
<td class="wrapword">
</td>
</tr>
</table>
word-break: break-word;
Use CSS3
word-wrap: break-word;
. Também funciona em navegadores baseados em WebKit (Safari, Chrome).Atualização : esqueci, o elemento em questão deve, entretanto, ser posicionado implícita ou explicitamente como elemento fixo ou exibido como elemento de bloco. Para células da tabela (
td
), usedisplay: inline-block;
.fonte
display: inline-block;
.Para um layout automático de tabela, tente estilizar o td em questão combinando os atributos max-width e word-wrap.
Por exemplo:
<td style="max-width:175px; word-wrap:break-word;"> ... </td>
Testado no Firefox 32, Chrome 37 e IE11.
fonte
max-width
, e não comwidth
. No entanto, a melhor solução para mim, porque não separa palavras em pontos arbitrários.Aqui está uma versão avançada do que o OP pediu.
Às vezes, o que acontece é que nosso cliente quer que demos '-' após a quebra de palavra até o final da linha.
Gostar
quebrar para
Portanto, há uma nova propriedade CSS, se houver suporte, geralmente compatível com os navegadores mais recentes.
Estou usando este.
Espero que alguém tenha uma demanda como essa.
fonte
Você pode injetar manualmente espaços de largura zero (& # 8203;) para criar pontos de interrupção.
fonte
<wbr>
[para "quebra de palavra"]. Aqui está o suporte do navegador para isso e a​
solução: quirksmode.org/oddsandends/wbr.htmlDefina uma largura de coluna para a
td
tag.fonte
Acho que esse é um problema antigo no Firefox, que remete ao Mozilla e ao Netscape. Aposto que você estava tendo problemas com a exibição de URLs longos. Acho que é um problema com o mecanismo de renderização, em vez de algo que você pode consertar com CSS, sem alguns hacks feios.
Faz sentido mudar o design.
Mas isso parecia promissor: http://hacks.mozilla.org/2009/06/word-wrap/
fonte
Estou usando o Angular para meu projeto e consegui resolver isso com um filtro simples:
Modelo:
Filtro:
Você não pode ver, mas depois
$1
há um espaço invisível (obrigado @kingjeffrey pela dica), que permitiu quebras de palavras para células da tabela.fonte
Uma maneira um tanto hackeada de fazer isso é processar o texto para adicionar espaço entre cada letra. Substitua os espaços por
Então use o atributo letter-spacing css para diminuir os espaços.Eu sei, é um hack ... mas se nada mais funcionar, deve terminar sem problemas.
fonte