Я думаю, что это решение поможет вам!
pre {
white-space: pre; /* CSS 2.0 */
white-space: pre-wrap; /* CSS 2.1 */
white-space: pre-line; /* CSS 3.0 */
white-space: -pre-wrap; /* Opera 4-6 */
white-space: -o-pre-wrap; /* Opera 7 */
white-space: -moz-pre-wrap; /* Mozilla */
white-space: -hp-pre-wrap; /* HP Printers */
word-wrap: break-word; /* IE 5+ */
}
http://perishablepress.com/press/2010/06/01/wrapping-content/
// Редактировать
Прошло много времени с тех пор, как это было принятокак лучший ответ и обновления не требуется.См. Ответы @ benhowdle89 и @ Steve ниже.
Так что текущая поддержка браузера теперь достаточно хороша, чтобы использовать word-break
для того, чтобы слова могли быть разбиты на несколько строк.
word-break: break-all
http://caniuse.com/#feat=word-break