The problem of the differences between browser is too complicated to discuss it seriously in a Quick Answer. Basically, the problem is: in general case of the page design and layout which is "complex enough", presently, there is no a way to get 100% identical rendering in all the major browsers of all versions. A while ago, I even saw the small rendering test challenging the layout engines. The test was the HTML + CSS, accompanied with the "perfect" bitmap of the layout which is supposed to come out according to the standards. No wonder, many versions of different browsers failed the test. The incompatibilities present in rendering of HTML + CSS and even in DOM and JavaScript. I think this situation is the real shame, but this is also the ugly truth of life.
So, what to do in this situation? Please see my past answers:
webpages layout change when running in different browsers.[
^],
How Do I Convert Desktop Site Into Mobile Site[
^].
See also:
http://www.codeproject.com/Answers/537436/Webpage-screen-resolution-Cross-Browser-Cross-Plat#answer2[
^],
To Get Screen resolution[
^].
My main idea is: if you cannot make your pages perfectly identically rendered in different browsers, you need to make them less critically depending on those differences. One of the most important ways of achieving this goal is some reasonable level of simplicity. Your goal is not to show off, but to provide good readability of the really valuable content and the ease of use, especially navigation. Many (I would say most) sites fail to do that, but the situation is being changed to better these days.
And one of the valid good approaches is this:
all browsers pass the # parameter to the script except for IE 6.[
^].
—SA