View Single Post
  #13 (permalink)  
Old Apr 3rd, 2007, 00:05
Donny Bahama Donny Bahama is offline
Reputable Member
Join Date: Mar 2005
Location: Margaritaville (a state of mind somewhere between Inebriation and San Diego), CA
Posts: 236
Thanks: 4
Thanked 0 Times in 0 Posts
Re: Bug in IE display of td background image?

Quote:
Originally Posted by Lchad View Post
I would suggest you set the width on each cell
Code: Select all
<td colspan='7'>on Friday, March 30, 2007 at 4:38 PM</td>
You should have a width. I think you are having spacing issues because the cells do not add up to the total width of the table.
OK... believe it or not, that doesn't fix it, either!

I did finally get to the bottom of this, though. I'll document it for posterity...

You're actually part right - a width *is* needed on every cell in a row once a total width has been defined for the table itself.

BUT - you can't have unnecessary colspans - even if all the widths are defined properly.

This works:
Code: Select all
    <table id='em_post' cellspacing='0' width='472'>
           <tr>
               <td colspan='3'><img src='img/classof57e-medley.gif' width='450' height='70' alt='Class of 57 e-Medley'></td>
           </tr>
           <tr>
               <td colspan='3'><img src='img/frame-top-pinkneon.gif' height='18' width='472' alt=''></td>
           </tr>
           <tr>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
               <td width='436'>on Friday, March 30, 2007 at 4:38 PM</td>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
           </tr>
    </table>
This does not:
Code: Select all
    <table id='em_post' cellspacing='0' width='472'>
           <tr>
               <td colspan='4'><img src='img/classof57e-medley.gif' width='450' height='70' alt='Class of 57 e-Medley'></td>
           </tr>
           <tr>
               <td colspan='4'><img src='img/frame-top-pinkneon.gif' height='18' width='472' alt=''></td>
           </tr>
           <tr>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
               <td>&nbsp;</td>
                <td width='431'>on Friday, March 30, 2007 at 4:38 PM</td>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
           </tr>
    </table>
(because the 2nd cell in row 3 has no width defined.) But this does:
Code: Select all
    <table id='em_post' cellspacing='0' width='472'>
            <tr>
                <td colspan='4'><img src='img/classof57e-medley.gif' width='450' height='70' alt='Class of 57 e-Medley'></td>
            </tr>
            <tr>
                <td colspan='4'><img src='img/frame-top-pinkneon.gif' height='18' width='472' alt=''></td>
            </tr>
            <tr>
                <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
                <td width='5'>&nbsp;</td>
                 <td width='431'>on Friday, March 30, 2007 at 4:38 PM</td>
                <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
            </tr>
     </table>
Even though all the cell widths are defined, this does not work:
Code: Select all
    <table id='em_post' cellspacing='0' width='472'>
           <tr>
               <td colspan='7'><img src='img/classof57e-medley.gif' width='450' height='70' alt='Class of 57 e-Medley'></td>
           </tr>
           <tr>
               <td colspan='7'><img src='img/frame-top-pinkneon.gif' height='18' width='472' alt=''></td>
           </tr>
           <tr>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
               <td width='5'></td>
               <td width='426' colspan='3'>on Friday, March 30, 2007 at 4:38 PM</td>
               <td width='5'></td>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
           </tr>
    </table>
unless you add a subsequent row that justifies the existence of that "colspan=3" in the middle cell of row 3. This works:
Code: Select all
    <table id='em_post' cellspacing='0' width='472'>
           <tr>
               <td colspan='7'><img src='img/classof57e-medley.gif' width='450' height='70' alt='Class of 57 e-Medley'></td>
           </tr>
           <tr>
               <td colspan='7'><img src='img/frame-top-pinkneon.gif' height='18' width='472' alt=''></td>
           </tr>
           <tr>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
               <td width='5'></td>
               <td width='426' colspan='3'>on Friday, March 30, 2007 at 4:38 PM</td>
               <td width='5'></td>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
           </tr>
           <tr>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
               <td width='5'></td>
               <td width='100'>whatever</td>
               <td width='226'>whatever</td>
               <td width='100'>whatever</td>
               <td width='5'></td>
               <td class='em_neonside'><img src='img/clr.gif' height='1' width='18' alt=''></td>
           </tr>
    </table>
So, there you have it.

I HATE IE.
Reply With Quote