Search code examples
internet-explorerfirefoxlayoutpixel

What could cause the same browser on different PCs to render the same HTML differently?


I'm stumped. A client and I are both running Firefox 3.0.12 on XP machines. We view the same page in the same browser on different machines and have different results. Note: All IE browsers are consistent on both of machines, and my FF 3.5.1 is consistent with my FF 3.0.12. (He does not have FF 3.5.x installed to compare with).

There is a 1 pixel difference that causes his header div (all images, no text) to wrap. Mine is fine. If I expand his header by 1 px (via Firebug css editing), it works.

So my question is what other variables are there that affect rendering??

I'm trying to think "outside the box" because it seems that it should work exactly the same.

We cleared the browser cache. I did a diff on the HTML source, and other than a javascript datetime stamp and a javascript tracking code var, the sources are identical.

I know this question would be helpful with source, but my client specifically does not want this page live on the internet yet. Also I verified the issue via a webex session. At first, I couldn't believe that we would have different results.

Anyone else come across something like this before? What should I check out / debug next?

Edit: There are a lot of suggestions pointing to fonts, but the header uses only images. Well, that's not completely true, there are divs that are part of a collapsible menu, but all of that is set to display:none for initially rendering, so I'm thinking that it's something else.

Edit 2: I've changed all sorts of fonts and sizes (both the system default font settings and within Firefox) on my computer to try to replicate the problem. I changed the rendering style (standard vs. clear type). Nada. The problem is almost definitely not font related. I'll have to see if I can get some more access to the client's computer to replicate the problem.


Solution

  • Since we can't take a look at the site in our own browsers, here is the process that I would use to try to nail down the issue:

    • Start removing code blocks piece by piece until the two browsers look the same.

    • Whichever block of code you last removed that made everything line up perfectly (even if you are missing a chunk from the body), that's near where the culprit is.

    • Since you've found the culprit, place all of the code back. Start messing around with the fonts first off. Change fonts, sizes, remove text, etc. until you can find a condition under which the browsers are the same. If it's not a font issue, start messing around with other parts of it until you've found the condition that matches it up.

    • Once you've done that, you will know your issue and you can work around it.