Christian Heilmann wrote:

> for a code example in my upcoming book I need to show and hide table
> rows dynamically.

Your IE code

table.dynamic tbody tr{
        display:none;
}
table.dynamic tbody tr.show{
        display:block;
}


> 
> and I can do it in Firefox via:
> 
> html>body table.dynamic tbody tr{
>       display:none;
> }
> html>body table.dynamic tbody tr.show{
>       display:table-row;
> }
> 
> However, MSIE does not play along. If you open the demo page:
> http://icant.co.uk/sandbox/pagination/examplePagination.html
> you'll see that the borders are messed up when you click next and
> previous links.
> 
> Does anyone have a fix for that? Any has-layout trickery? ...

The table elements should have enough layout by default. And position 
relative did not work well (but I haven't tested too much), so I think 
you have to hide the td and th, too:

table.dynamic tbody tr td,      
table.dynamic tbody tr th {
        display: none;
        }

table.dynamic tbody tr.show td,
table.dynamic tbody tr.show th  {
        display: block;
        }

Seems to work for IE6/7. Don't ask me why a td/th inside a non-displayed 
tr can ever render its borders.

For the others

html>body table.dynamic tbody tr.show td,
html>body table.dynamic tbody tr.show th {
        display: table-cell;
        }

> 
> You can download the demo files as a Zip
> http://icant.co.uk/sandbox/pagination/MSIErowissue.zip
> 

Best,

Ingo


-- 
http://www.satzansatz.de/css.html
______________________________________________________________________
css-discuss [EMAIL PROTECTED]
http://www.css-discuss.org/mailman/listinfo/css-d
IE7b2 testing hub -- http://css-discuss.incutio.com/?page=IE7
List wiki/FAQ -- http://css-discuss.incutio.com/
Supported by evolt.org -- http://www.evolt.org/help_support_evolt/

Reply via email to