If you take a look at my website in firefox:

and in internet explorer:

you will see the top menu in internet explorer is on the left.

The css code I have used is:

.overbodyline
{ 
background-image:url(/music/images/main.gif);
background-repeat: repeat-y;
{T_TH_COLOR1} solid;
font-size : {T_FONTSIZE2}px;
color : {T_BODY_TEXT};
padding: 0px 0px 0px 40px;
}

and the table code is as follows:

<table width="100%" cellspacing="0" border="0" class="overbodyline">
      <tr><td><table class="stand" width="700px">random gubbins
</table>
</td></tr>
<table>

For some reason the rest of the padding is fine. I've attached the whole file if you need to check out anything else.

In general, CSS spacing issues can be resolved by specifying both the "padding" and "margin" properties of all the affected elements.

Tables have their own properties... try setting "cellpadding".

Ah taking of cellpadding - I've tried that and it works but I've found no way of specifying that it only pads the left hand side... any ideas if theres a way to define it?

So theres no way of defining the cellpadding attribute to pad from the left. So back to square one. I wonder why this table is causing trouble when the rest are fine?

CSS attributes "cascade", from least-specific to most-specific. You are also mixing inline attributes with CSS class definitions.

In any given TD for your table, you'll get a "combined" or "derived" style based on the inline attributes, the "overbodyline" class, and the "stand" class. Any attributes you've left undefined (such as "margin") will get whatever default the browser uses.

Is the data in your table really tabular? Are you actually presenting a "table" of data? If not, then consider using DIVs, SPANs, and CSS to control appearance and flow. It will be much simpler to troubleshoot these issues if you didn't mix tables and CSS.

I restructured my tables and got it fixed... yay!