Issues with IE Compatibility

Be aware of the difference between the Browser Mode vs. Document Mode.

  • Browser Mode is controlled by the client browser - is affected primarily by "Compatibility View" settings as well as domain 
  • Document Mode is controlled by the web server, and/ or the web page 

Using IE 8-9, some strange behaviour has been observed.

Enabling Compatibility View (for either intranet, all websites) would result in the following for affected sites:
  1. IE conditional comments would detect IE7
  2. User-agent sent would be IE7 (compatible)
  3. Browser mode would show IE 9 Compatibility View
  4. Document mode would be IE 7 standard
The above behaviour would not be affected by X-UA-Compatible meta-tags within the page. 
However, sending X-UA-Compatible HTTP header would alter the behaviour as follows:
  1. IE conditional comments would detect IE9
  2. User-agent sent would be IE7 (compatible)
  3. Browser mode would show IE 9 Compatibility View
  4. Document mode would depend on the value of the X-UA-Compatibility (E.g. IE=edge)
In a corporate intranet environment where IE 8-9 is ubiquitous, the recommended practice would be to:
  • If there is intention to support IE7: Design and test the site/ application for IE7 up to the latest prevailing IE
  • Otherwise: Send the X-UA-Compatible: IE=edge HTTP header so that testers using IE 8-9 would not be affected by browser mode "Compatibility View" - which would have forced the document mode to be IE 7.
Some resources:
  1. Javascript inspector
  2. IE9 Compatibility Cookbook
  3. IE9 Javascript changes
  4. Preparing website for IE9
  5. IE9 document modes and Javascript support
  6. Even Baidu uses DocType to resolve issues!

Comments

Popular posts from this blog

Understanding ITIL Service Management the UML way…

Apache Web Server Troubleshooting