You have the image that makes the border in as a forground image with height="100%". But 100% of what?
Tables and table cells, according to the w3c specs, don't have a height atribute. So even though you set the table cells to 100%, FF and Opera just ignore it. So the table cell is 0px high and the visable content is just overflow. So you side images are 100% or 0px high. So they don't show.
The solution is actually simlple. If you put the side images into the html as backgrounds, then the browser will tile the image down the side of the table cell. Whatever size the table is, it will have the side image all the way down. E.g. You current html is
Code:
<td height="100%">
<img src="images/right.gif" width="17" height="100%" alt=""></td>
Change this to:
Code:
<td style="background-image:url(images/right.gif); background-repeat: repeat-x;">
</td>