Regarding the white gap, my tactic is to put the following in my CSS:
Different browsers tend to render margins and padding differently when they're not specified, as you've discovered. By resetting the margins and padding to nothing you get better control over your site in all browsers.
Couple more things: do you want the site to be centered? It looks a little awkward sitting on the left of my widescreen monitor. Put everything in an outer container, give it a width and a margin of 0 auto - should do it.
Also, 1024px is a little bit wide. If someone's using 1024x768 and they have a vertical scrollbar or sidebar or if their browser isn't quite maximised, they'll have to scroll horizontally. 940-960px is generally considered safer.
Code:
* {margin: 0; padding: 0;}
Different browsers tend to render margins and padding differently when they're not specified, as you've discovered. By resetting the margins and padding to nothing you get better control over your site in all browsers.
Couple more things: do you want the site to be centered? It looks a little awkward sitting on the left of my widescreen monitor. Put everything in an outer container, give it a width and a margin of 0 auto - should do it.
Also, 1024px is a little bit wide. If someone's using 1024x768 and they have a vertical scrollbar or sidebar or if their browser isn't quite maximised, they'll have to scroll horizontally. 940-960px is generally considered safer.