+2  A: 

I suggest you remove styling from table and only apply it to cells (not even rows). Styles on table and tr tags can sometimes produce side effects.

User
+1  A: 

you can try to have a display:none on the table if it is empty, and do it in javascript.

The table is not really empty on my actual page (but has the exact same problem), so display: none won't work for me.
Dennis G.
+1  A: 

An old post I know, but I stumbled across it when looking for a solution myself. It would appear that this is fixed in IE8, but I tried every trick I knew to get it sorted in IE6/7 and just couldn't find a decent way. In the end I've gone for the option of adding a margin-top:-1px; to the red div (or whatever element follows) using an IE6/7 targeted selector. What a frustrating bug!

Allan

Allan Jardine
A: 

just put border-collapse: collapse; in your css...

yazan
Already there, still buggy.
Dennis G.