You have some really fundamental HTML errors in your page (follow the link to the validator in my earlier post). When browsers get invalid code, they try to guess what you meant. The trouble is that they all guess differently (for the doctype you're using), so you're potentially risking serious cross-browser issues.
On the other hand, you may get away with it. There's no way of telling because you've broken the implicit contract spelt out in the first line of your HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
I.e., your html is not XHTML 1.0 Transitional, so browsers are not bound by the contract and can render your code in any way they see fit.
I'd work my way through the errors and fix them. You may prefer just to check that your pages all look OK in every browser you care about and not worry about the HTML errors. But bear in mind you'll need to test every type of page in every type of browser if you want to be sure.
Your call, really.
Cheers
PAE