Você precisa aplicar a seguinte propriedade CSS ao bloco de contêiner (div):
overflow-wrap: break-word;
De acordo com as especificações (fonte CSS | MDN ):
A overflow-wrap
propriedade CSS especifica se o navegador deve ou não inserir quebras de linha nas palavras para evitar que o texto transborde de sua caixa de conteúdo.
Com o valor definido para break-word
Para evitar o estouro, palavras normalmente inquebráveis podem ser quebradas em pontos arbitrários se não houver pontos de quebra aceitáveis na linha.
Vale a pena mencionar...
A propriedade era originalmente chamada de uma extensão não padrão e sem prefixo da Microsoft word-wrap
e foi implementada pela maioria dos navegadores com o mesmo nome. Desde então, foi renomeado para overflow-wrap
, word-wrap
sendo um alias.
Se você se preocupa com o suporte a navegadores legados, vale a pena especificar ambos:
word-wrap : break-word;
overflow-wrap: break-word;
Ex. IE9 não reconhece, overflow-wrap
mas funciona bem comword-wrap