The platform independent fast/dom/Element/getClientRects-expected.txt file contains: Client bounding rects for #9 FAIL testRects.length should be 2. Was 1 Is it really the expected behaviour to fail?
IE8 returns 1 FF3.5 returns 2 Opera 10 returns 1 WebKit returns 1 http://www.plexode.com/cgi-bin/eval3.py#ht=%3Ctable%20id%3Dt%3E%0D%0A%20%20%3Ccaption%3EHi%3C%2Fcaption%3E%0D%0A%20%20%3Ctr%3E%3Ctd%3Eone%3Ctd%3Etwo%0D%0A%20%20%3Ctr%3E%3Ctd%3Ethree%3Ctd%3Efour%0D%0A%3C%2Ftable%3E&ohh=1&ohj=1&jt=document.getElementById('t').getClientRects().length&ojh=1&ojj=1&ms=100&oth=0&otj=0&cex=1 I think the expectation is wrong
I should have done my research first: http://www.w3.org/TR/cssom-view/#the-getclientrects "If the element on which the method was invoked has a computed value for display property of table or inline-table include both the table box and the caption box, if any, but not the anonymous container box. [CSS21] "
Yeah, the expectation comes from the spec, but if this does not match reality, we should lobby to change the spec.
I brought this up to www-style@ and I'm convinced that the spec is for the better. I'll take a stab at fixing this.