No he doesn't. The centering trick you're talking about only applies to the wrapper div itself, and it's for IE 5.5 and below.
I'm honestly surprised this works in any browser. In this case, it's not IE's fault (totally). It's at least partly due to invalid code.
http://validator.w3.org/check?uri=http%3A%2F%2Fwww.spa902.com%2Fsoccer%2F& charset=%28detect+automatically%29&doctype=Inline& group=0
If you want to be specific with the width of a form field, define it in CSS (e.g. style="width: 250px;">).
Next on the agenda, your forms. Apply this to your CSS file (it works across all browsers):
Code:
form {
margin: 0;
padding: 0;
}
Some people use display: inline; but I find this works consistently whereas display: inline doesn't.
Setting a fixed font size: bad mojo. That only works in IE, and most browsers will ignore it and let users resize to their hearts' content anyway. If your design doesn't allow for that (and this one appears not to), you're in for trouble.
As far as your menu goes, I've got an answer for it on my blog if you want to lift the code (it's my footer and header menu code). Simply put, use an unordered list and go from there. Code's much cleaner that way.
IE6 is likely reacting to this for your camp position div:
Code:
.camp_position {
width: 950px;
padding-left: 24px;
}
950 + 24 = wider than your wrapper div by 24 pixels. Take the padding-left out of it. Doesn't look like it even plays in.
Fix that stuff up and see how close it gets you.