Ok, this is a very common problem with a majority of developers out there. If you design a site using only IE, it will look broken in every other browser on the planet. Period.
This is because IE has quite a few known flaws when it comes to rendering pages, especially with CSS. So what to most people do? Resort to tables. "Tables for everything," they say. When things don't line up... well throw a table inside that td, then wrap the whole thing inside another table... nonsense.
Design your site incrementally and test both IE and firefox during development. Firefox has MUCH better standards support. IE7 is a HUGE step in the right direction. I can't wait until we bury IE6.
Ok, I'm done ranting. I suggest you check out CSS Mastery by Andy Budd and you'll get a good grip on how to use CSS for layout that works in all modern browsers.
Good luck.