I have a table, and inside some cells I have few <span>, the <td> containing these span has a class with word-wrap: break-word; white-space: normal;.
In other words: <td class="breakit"><span>foo</span><span>bar</span></td>
With: .breakit{ word-wrap: break-word; white-space: normal; }
Well no matter how much I shrink the browser it never break the span!
Why?
why? Because there is no white-space between foo and bar.
Put in a space, or move the bar span down a line in your HTML, and it will break.
UPDATE
I think I’ve found the real reason:
“No matter how you’re specifying table width, each table has a minimum size and it will never display smaller than that size. The minimum size is calculated by the length of the longest single word in each cell.”
found in : http://www.devx.com/projectcool/Article/17870/0/page/9
…and this rule appears to apply to each cell, that is, the minimum width of a cell is dictated by the longest word within it.
(this is another reason not to use tables for general layout purposes).