I always make my sites to work in Opera. Opera passed the acid test and is completely standards compliant, so if my site works in Opera then I know my code is right. Then I load it up in each other browser and see what it looks like. The only one to ever cause problems is IE, although gradually over time I have learned how to make sites work in IE and fix specific problems IE creates.
Setting every single option yourself, rather than leaving things as defaults in CSS is usually a good idea as it should make everything look the same. For example, jlhaslip's suggestion of setting borders, padding and margins of the HTML area to 0 means that browser defaults for padding the whole page etc. are overridden, so your page should look the same in each browser.
QUOTE
My experience says always make a site with IE in mind and it will be displayed well in other browsers also.
The problem with this is that most people make it work in IE and then leave it, without even looking at it in another browser. This is why many sites on the web don't work well in Opera or other browsers. And why I often turn away from a site - if they can't be bothered to test and correct their site, what they're selling or saying is normally not that good either. As long as you check your site works in every browser then you should be fine, no matter which way round you do it.
If statements in HTML are a good way if you have a really tricky problem to resolve, and the best approach would be to make separate CSS for each browser, or certain browsers (usually IE).
Quirksmode has a great little guide on using them.
Reply