Without seeing your specific pages in question, my first thought would be to make certain you are using some sort of browser reset CSS:
http://yuilibrary.com/yui/docs/cssreset/
^That's the "nuclear" method, but even something as simple as
*{margin:0;padding:0;} can prevent a lot of headaches. These browser reset examples ensure that the various browser default styles are all "reset" to a default state that you then build from. Essentially, this does its best to start all browsers on equal footing when rendering your pages.
Secondly, I always make sure my HTML validates. Many (MANY) cross-browser display issues are a result of invalid HTML - and it's usually so easy to correct that there is really no excuse not to do so...
Then, of course, a lot of people recommend you also validate your CSS for extra certainty (though I usually skip this step).
After that, the only differences you should see cross-browser are box-model differences and things of that nature, but those should be fairly minimal at this stage.
Now if you're referring to mobile browsing...well that can always add an element of extra fun.
And if your specific problems are with CSS3 styles then you should peruse this website from time-to-time to see what things are supported and by which browsers:
http://caniuse.com