CSS for table descendants

Safari handles the child/descendant concept incorrectly in tables. The sample style has a .table_style tr style that Safari applies to the first row only. IE and FF do this correctly. Changing this to .table_style > tr still doesn't work! I had to change it to .table_style tr * to get it to work, but that's non-standard.

Test page Workaround is not included
Reported by: Norman Franke.

Safari | Reported on 6 April 2007.

This site is no longer maintained. I’m sorry, but it’s just too much work for too little return. You can continue to browse old bug reports, though.

Search reports by browser:

Atom RSS


(Add your own)

1 Posted by Brian LePore on 6 April 2007 | Permalink

Just guessing, as I don't have Safari to test against, but I'm betting that Safari is like Firefox (and I believe IE and Opera) which generates a tbody element between the table and the tr element, and thus explains why .table_style > tr doesn't work.

2 Posted by Norman Franke on 18 April 2007 | Permalink

Likely, but that doesn't explain why every other browers works. I believe it's really due to Safari's incorrect handling of the descendant/child concepts. If you state that all descentant 's have a height, it shouldn't matter if there is an intermediate tbody (since it's still a descendant.) Again, FF and IE work OK.

3 Posted by Dustin Diaz on 19 May 2007 | Permalink

Take special note, it was the 'height' property that didn't work. If you try things like color and background properties, it works.

4 Posted by Mark Rowe on 28 May 2007 | Permalink

This appears to work as expected in the latest builds of WebKit.

5 Posted by Stephen on 12 June 2007 | Permalink

The good news is that it works properly in the new Safari 3 Beta for Windows XP. I can assume that the same behavior will be found in the full release version and in the Mac versions.

6 Posted by Brandy on 14 June 2007 | Permalink

I can verify that this bug is fixed in Safari 3 Beta on a Mac. (I'm using 10.4.9 on a Macbook Pro.)