Reputation: 471
This is what I have:
<td style='width: 500px;
white-space: pre-wrap;
white-space: -moz-pre-wrap;
white-space: -pre-wrap;
white-space: -o-pre-wrap;
word-wrap: break-word;'>
Upvotes: 18
Views: 28414
Reputation: 3649
I used:
word-wrap: break-word;
word-break: break-all;
table-layout: fixed;
table-layout: fixed
was the key to making it work.
Upvotes: 36
Reputation: 3169
I think this solution will help you!
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/
// Edit
It's been a long time since this was accepted as the best answer and updates are required. See @benhowdle89's and @Steve's answers below.
So the current browser support is now good enough to use word-break
in order to allow words to be broken over multiple lines.
word-break: break-all
http://caniuse.com/#feat=word-break
Upvotes: 15
Reputation: 1782
All you need is
word-break:break-all
This works in Chrome 4+, IE 5.5+, FF 15+, Safari 3.1+, and Opera 15+
Upvotes: 5