Pergunta

I’m running into an issue where some icons aren’t showing up in IE8 on XP, but when I run IE9 on Win 7 with document & browser modes set to IE8, the issue doesn’t present itself.

So I’m wondering what the known differences are between IE8 emulation and the real deal. Let’s hear ’em!

Foi útil?

Solução

  1. window.performance exists

  2. The UA includes the token “Trident/5.0” instead of “Trident/4.0”. Source.

  3. Per Paul Irish: “IE9’s IE8 mode: intermittently false positives on a feature test for inline SVG. Renders CSS differently than true IE8, and is crashier than the real one.”

  4. Real IE8 does not allow text to be transparent, but IE9’s emulation does. JSFiddle demo and screenshots.

  5. In IE9’s IE8 mode, you can only style visited links differently by color (it’s a privacy fix that prevents checking if a URL is in your browser history).

  6. http://ajh.us/ie8-9

Outras dicas

More differences:

  1. CSS visited/link privacy fixes still apply to compatibility modes for obvious reasons.

  2. No support for HTML+TIME because it is rarely used.

IE8(at the very least, 64bit version on Windows 7) will randomly fail, and sometimes outright crashes, when JSON.stringify is used to serialize an object with nested arrays, ie:

var someModel = {
    "pages": [{
        "fields": [{}]
    }]
};

This doesn't happen in IE8 compat mode. This jsfiddle example is using knockout(it's an example from when I first came across it), but it can be tracked all the way to JSON.stringify http://jsfiddle.net/5LPSx/10/

Certain javascript behavior is different. For instance, the JScript DontEnum bug looks be fixed in IE10 emulation of IE8.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top