Ok, well looking at your table, the colspan=6 crap doesn’t belong in the table, the rowspan=3 stuff probably also doesn’t belong in there especially since that doesn’t even seem like a header to any of the rows. The button tag is unreliable cross browser and probably shouldn’t even be being used, etc, etc, etc…
… and that’s before we even TALK about cellspacing, classes that probably shouldn’t even be presents on the table, inlined style, etc, etc, etc…
Is that all going to be one big form? (doesn’t look like it…) if not, you should be having all your form tags in there ahead of time too.
Going through to clean it up, I think I may have found PART of your issue, but not sure. You’ve got a section set as colspan=“6” when there are only five columns at that point… yeah, you are trying to ‘cheat’ using colspan to target that line when that could be causing all sorts of headaches.
Is that divider only supposed to show up before c_foot? If so, why not just pad the top of c_foot and put it there?
In any case, only one small subsection of that bit of code is actually tabular data - so only that subsection should be in a table in the first place.
OH WAIT, I see it for certain – duh. It has to stretch to fit the height of the rowspan next to it. Tables are fully dynamic and you can NEVER trust height to work consistently cross browser next to a rowspan - which the fix is what I said above, don’t waste table elements on 90% of the stuff there, reserve the table for the actual tabular data.
I’d probably swap the markup down to something like this:
<div class="pm_inbox">
<form action="#" class="pm_searchMessages">
<fieldset>
<label for="searchMessagesSender">Search Messages By Sender:</label>
<input type="text" name="sender" id="searchMessagesSender" />
<input type="submit" value="Search" />
</fieldset>
</form>
<div class="pm_selectMessages">
Select Messages:
<a onclick="return toggleAll(this,'msg_boxes','bx_read');" href="#">Read Messages</a> ·
<a onclick="return toggleAll(this,'msg_boxes','bx_replied');" href="#">Replied Messages</a>
</div>
<ul class="pm_folderlist">
<li><a href="/msg/?folder=-1">Inbox</a> · 0</li>
<li><a href="/msg/?folder=-2">Archive</a> · 0</li>
<li><a href="/msg/?folder=-3">Drafts</a> · 0</li>
</ul>
<div class="pm_folderIndent">
<table>
<thead>
<tr>
<th class="pm_subject"><a href="/msg/?folder=-1&sort=title&pg=1">Title</a></th>
<th class="pm_with"><a href="/msg/?folder=-1&sort=name&pg=1">Conversation with:</a></th>
<th class="pm_replies">Replies</th>
<th class="pm_datesent"><a href="/msg/?folder=-1&sort=&pg=1">Received</a></th>
<th class="pm_select"><input type="checkbox" onclick="toggleAll(this,'msg_boxes')" id="selectall" name="selectall"></th>
</tr>
</thead>
<tbody>
<tr>
<td class="pm_subject">ASDFASDFASD</th>
<td class="pm_with">Nimrod</th>
<td class="pm_replies">1</th>
<td class="pm_datesent">2</th>
<td class="pm_select">
<form action="#">
<div>
<input type="checkbox" name="selecthis" />
</div>
</form>
</th>
</tr><tr>
<td class="footer" colspan="5">
<form action="#">
<fieldset>
<legend><span>With Selected:</span></legend>
<input value="1" name="read" type="submit" value="Mark as read" />
<input value="1" name="unread" type="submit" value="Mark as unread" />
<input value="1" name="del" type="submit" value="Archive" />
</td>
</tr>
</tbody>
</table>
</div>
<!-- .pm_inBox --></div>
pm_folderIndent is so you can margin-left it next to the float and still declare width:100% on the table.
… and as Felgall said, tranny is for supporting old/outdated/half-assed coding methodologies, not for building new websites.