Thursday, August 07, 2014

How to enable browser compatibility mode for your website

After every browser major release there will be something's which always mess up. Can’t say its always but it has happened so far :- )

So you might asked to force to the stable version of the browser to make sure your web application renders well in the browser. Here are some things we can add to existing page to make sure it works in the compatible mode by forcing the version we would like to render.

Method 1: If its at page level.

<head>
<!-- Mimic Internet Explorer 9 -->
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE9" >
<title>My webpage</title>
</head>



Method2: You can do the same globally in web.config by adding code like below


<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<clear />
<add name="X-UA-Compatible" value="IE=EmulateIE9" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>


The value attribute is used to set the default render engine to render page. If you are looking for IE8 compatibility use the following code


<add name="X-UA-Compatible" value="IE=EmulateIE8" />


we can also use this tag


<add name="X-UA-Compatible" value="IE=Edge" />


IE=edge indicates that IE should always use its latest rendering engine to render the page. This should ensure the page is rendered consistently with other browsers and in a standards-compliant manner


The following is the documentation that I've used to try understand how IE decides to actually trigger the compatibility mode.

http://msdn.microsoft.com/en-us/library/ff406036%28v=VS.85%29.aspx

http://blogs.msdn.com/b/ie/archive/2009/02/16/just-the-facts-recap-of-compatibility-view.aspx

No comments:

Post a Comment