I have run into a problem with using the ExtendedDataTable from RichFaces 3.3.3 in Quirks mode. When the height of the table is less than the assigned height, the body of the table is not as wide as the header of the table. It seems that the "scrolling div" surrounding "body table" always reserves space for the scrollbar, regardless if it is needed or not. The only exception is, if the total height of the rows is less than 50px (the initial height of the "scrolling div"), e.g. if you only habe one row.
The problem seems to be that the "scrolling div" is initially 50px high, which will normally cause it to have a vertical scrollbar. Then the updateLayout() function of extended-data-table.js, adjusts the column widths of the table and extends the heigth of the "scrolling div" according to the height set on the ExtendedDataTable. This correctly causes the scrollbar of the "scrolling div" to disappear, and in both Firefox and IE Strict mode, the "body table" (which has "width: 100%") will expand horizontally to fill the space where the scoll bar was. But in IE8 in Quirks mode, the table does NOT expand and the space where the scollbar was, is just left empty.
It is quite easy to see on the ExtendedDataTable demo page if you use IE Developer tools and switch to Quirks mode.
Initially the table looks like this, with a scrollbar (also shows a slight problem with a missing right border of the table):
If you then search for states starting with "a", the table should have looked like this:
but instead looks like this (notice the empty space where the scrollbar would have been):
And finally if you search for Alabama, the table only has one row and looks like this (with no empty space):
because the "scrolling div" never had a scrollbar in the first place...
This is probably one of the numerous bugs, regarding 100% wide tables inside scrolling divs, which have apparently plagued IE though its life, so I don't know if this is even fixable in RichFaces, but does anyone have a suggested workaround for this problem?