That's not PHP, that's bad CSS....
I'm guessing you coded it to look OK in IE, but when you test in firefox, everything looks "wrong". Well, in all honesty, everything is wrong in IE, but right in firefox. The CSS code you have written is interpreted properly in Firefox as far as standards are concerned. In IE, the engine actually guesses at what you meant (not a good thing) and displays what it thinks you meant.
The way to combat this is to code per the standard, and for Firefox/Konquerer/Safari first. When you've got them the way you want them, start fiddeling with items and see how it changes in IE. Then, use a small "hack" or trick to hide certain code from IE (both Mac & Win) and put what Firefox should render.
So a sample would be:
/*
** This is code IE & Firefox will see
*/
body{ background-color: #ccc; }
#wrapper{ width: 748px; }
/* IE Mac Hack/Exploit \*/
body > #wrapper { width: 750px; }
/*******************/
CSS code is executed from the top down, and if you define an item twice, the latter definition trumps the prior.
If you need more help with CSS and getting it working, use the CSS Validator (w3.org) and check out the forums over at csscreator.com, and use google to find out about IE hacks/exploits to get your CSS more "universal"....