Article ID: 968499 - Last Review: March 30, 2009 - Revision: 3.2

Advanced solutions: Some Web sites may not be displayed correctly or work correctly in Windows Internet Explorer 8

On This Page

Expand all | Collapse all

SYMPTOMS

Some Web sites may not be displayed correctly or may not work correctly in Windows Internet Explorer 8. This problem does not occur in earlier versions of Internet Explorer, and the affected Web sites continue to be displayed correctly and to work correctly in Windows Internet Explorer 7.

However, if you are using Internet Explorer 8, you may experience any of the following symptoms:
  • Menus, images, or text are in the wrong positions on some Web sites.
  • Some Web site features do not work.
  • You receive script error messages on some Web sites.
  • Internet Explorer stops working or crashes on some Web sites.

CAUSE

Some Web sites are designed for older browsers. You may experience compatibility issues on these sites until they are updated to work with Internet Explorer 8.

WORKAROUND

Internet Explorer 8 includes a Compatibility View feature that displays Web sites that were created for older browsers as they were designed to appear. You can enable Compatibility View in Internet Explorer or on the Web server.
  • Enable Compatibility View in Internet Explorer for a single computer

    To do this, try Method 1 for each Web site that is not displayed correctly or that does not work correctly. If this problem occurs on many Web sites that you frequently visit, you can enable Compatibility View for all Web sites by using Method 2. These methods are intended for users who are running Internet Explorer.
  • Enable Compatibility View in Internet Explorer for multiple computers in an enterprise environment

    To do this, use Method 3. This method is intended for enterprise network administrators.
  • Enable Compatibility View on the Web Server for your Web site content or for your whole Web site

    To do this, use Method 4 or use Method 5. These methods are intended for Web site administrators and for Web content developers.

Enable Compatibility View in Internet Explorer for a single computer

Method 1: Enable Compatibility View for specific Web sites by using Internet Explorer

To enable Compatibility View for specific Web sites that are not displayed correctly or that are not working correctly, follow these steps:
  1. Open the Web site that is not displayed correctly or that does not work correctly in Internet Explorer 8.
  2. Click the Compatibility View icon that is located directly to the right side of the address bar.

    Collapse this imageExpand this image
    Compatibility View icon


    Or, on the Tools menu, click Compatibility View.

    Note If the Compatibility View icon does not appear at the right side of the address bar, or if the command is not available on the Tools menu, you cannot use this method. You may be experiencing a different problem, or the network administrator may have used a Group Policy setting to configure the Compatibility View settings on your computer. Compatibility View is not required, and the Compatibility View commands will not be available if the Web site was designed for earlier versions of Internet Explorer.
After you enable Compatibility View, the Web site will automatically refresh, and you may see a message that states that the Web site is running in Compatibility View.

If this method worked, and the Web site is now displayed correctly and works correctly, you are finished. However, you may have to repeat this method for each Web site that experiences these problems.

Note When you use this method to fix a Web site, Internet Explorer saves your Compatibility View setting for that Web site. Every time that you visit that site, Compatibility View will be used. To stop a Web site from running in Compatibility View, repeat this method by clicking the Compatibility View icon again for that Web site. You can also add or remove specific Web sites from Compatibility View without actually visiting each Web site. To do this, click Tools, and then click Compatibility View Settings.

If this method did not work, and the Web site is still not displayed correctly or still is not working, you are experiencing a different problem. See the "Similar problems and solutions or contact support" section for alternative steps.

Method 2: Enable Compatibility View for all Web sites by using Internet Explorer

Most Web sites that you frequently visit are not displayed correctly or are not working correctly. You have tried Method 1 on some of these Web sites, and that method worked. However, you may want to enable Compatibility View for all Web sites. To do this, follow these steps:
  1. Start Internet Explorer 8.
  2. On the Tools menu, click Compatibility View Settings.

    Note If the Compatibility View Settings command is not available, the network administrator may have used a Group Policy setting to configure the options for you. Contact your administrator or the help desk. Contact your administrator or the help desk.
  3. Click to select the Display all websites in Compatibility View check box, and then click Close.
Visit several Web sites that were not displayed correctly or that were not working to see whether the problem is now resolved.

If this method worked, and all Web sites are now displayed correctly and work correctly, you are finished.

If this method did not work, and some or all of the Web sites are still not displayed correctly or are not working, you are experiencing a different problem. See the "Similar problems and solutions or contact support" section for alternative steps.

Enable Compatibility View in Internet Explorer for multiple computers

Method 3: Set Compatibility View options for multiple computers in an enterprise environment by using Group Policy settings

To enable Compatibility View for multiple computers in an enterprise environment, administrators can use the following new Compatibility View Group Policy settings that are available for Internet Explorer 8:
  • Turn on Internet Explorer 7 Standards Mode: This setting enables Compatibility View for all Web sites and prevents users from enabling or disabling Compatibility View for any Web sites.
  • Turn off Compatibility View: This setting disables Compatibility View for all Web sites and prevents users from enabling or disabling Compatibility View for any Web sites.
  • Turn on Internet Explorer Standards Mode for Local Intranet: This setting disables Compatibility View (enables Standards Mode) for all intranet Web sites.
  • Use Policy List of Internet Explorer 7 sites: This setting lets administrators add specific sites that must be viewed in Compatibility View. Users can add or remove sites from the list. However, they cannot remove sites that are specified by the administrator.
  • Turn off Compatibility View button: This setting prevents users from using the Compatibility View button to try to fix Web sites. This setting does not work in Windows Internet Explorer 8 Beta 2.
These settings are available for both Users and Computers in the following location for each site, domain, and organizational unit:
Administrative Templates/Windows Components/Internet Explorer/Compatibility View
For more information about these Group Policy settings, see the explanations in the Group Policy user interface.

Enable Compatibility View on the Web server for your Web site content or for your whole Web server

The following information is intended for Web content developers and for Web site administrators. To give you time to transition your Web content to Internet Explorer 8 Standards mode, you can specify that your content should always be viewed in Compatibility View. To enable Compatibility View for your whole Web site, use Method 4. To enable Compatibility View for specific Web pages, use Method 5.

Note When you use either of these methods, Internet Explorer 8 displays your whole site or a specific page in the same manner that Internet Explorer 7 displays the Web site. Specifically, Internet Explorer will render pages either in Internet Explorer 7 Standards (Strict) mode or in Internet Explorer 5 (Quirks) mode, depending on the Doctype element declaration.

These methods should address most display and functionality issues. However, your browser detection code may also have to be updated on your site.

To learn more, visit the following Microsoft Web site:
http://www.microsoft.com/windows/products/winfamily/ie/ie8/readiness/DevelopersExisting.htm (http://www.microsoft.com/windows/products/winfamily/ie/ie8/readiness/DevelopersExisting.htm)
To verify that you have installed the tag correctly on your site, follow these steps:
  1. If you do not have Internet Explorer 8 installed, you can download it by visiting the following Microsoft Web site:
    http://www.microsoft.com/windows/internet-explorer/download-ie.aspx (http://www.microsoft.com/windows/internet-explorer/download-ie.aspx)
  2. Browse your site in Internet Explorer 8 Standards mode, and verify that you do not encounter the issues that are described in the "Symptoms" section.
For more information about document compatibility in Internet Explorer 8 Beta 2, visit the following Microsoft Web sites:
http://go.microsoft.com/fwlink/?LinkId=125151 (http://go.microsoft.com/fwlink/?LinkId=125151)
http://msdn2.microsoft.com/en-us/library/cc288325(VS.85).aspx (http://msdn2.microsoft.com/en-us/library/cc288325(VS.85).aspx)
For more information about Cascading Style Sheets Compatibility in Internet Explorer, visit the following Microsoft Web site:
http://msdn2.microsoft.com/en-us/library/cc351024(VS.85).aspx (http://msdn2.microsoft.com/en-us/library/cc351024(VS.85).aspx)

Method 4: Enable Compatibility View for your whole Web site or for specific Web site directories

To enable Compatibility View for your whole Web site or for certain Web site directories, include the following custom HTTP header for all requests to your site or directory.
X-UA-Compatible: IE=EmulateIE7
To do this in Internet Information Services (IIS) on a Windows server-based Web server, you must either add a custom HTTP response header in IIS or configure the Web.config file for the appropriate directory.

Add the custom HTTP response header in IIS

To add a custom HTTP response header at the Web site level, at the folder level, or at the virtual directory level in IIS, follow the steps for the version of IIS that you are using.
IIS 7 on a Windows Server 2008-based Web server
  1. Start IIS Manager. To do this, click Start, click Run, type inetmgr, and then click OK.
  2. Under Connections, double-click the server that you want, and then double-click Sites.
  3. Click the Web site, the folder, or the virtual directory where you want to add the custom HTTP response header.
  4. Under <Web site name> Home, double-click HTTP Response Headers in the IIS section.

    Note The <Web site name> placeholder refers to the name of the Web site.
  5. Under Actions, click Add.
  6. In the Name box, type X-UA-Compatible.
  7. In the Value box, type IE=EmulateIE7.
  8. Click OK.
IIS 6 and earlier versions
  1. Click Start, click Run, type inetmgr.exe in the Open box, and then click OK.
  2. Expand the server that you want, and then expand Web Sites.
  3. Right-click the Web site, the folder, or the virtual directory that you want, and then click Properties.
  4. On the HTTP Headers tab, click Add under Custom HTTP headers.
  5. In the Custom header name box, type X-UA-Compatible.
  6. In the Custom header valuebox, type IE=EmulateIE7.
  7. Click OK two times.
Add the custom HTTP response header in the Web.config file
To add this header to the Web.config file, create or revise the Web.config file as follows.
<?xml version="1.0" encoding="utf-8"?>
  <configuration>
     <system.webServer>
           <httpProtocol> 
               <customHeaders> 
                    <clear /> 
                    <add name="X-UA-Compatible" value="IE=EmulateIE7" /> 
               </customHeaders> 
           </httpProtocol> 
     </system.webServer> 
</configuration>
Note Add this new or revised Web.config file to each Web directory in which you want to use compatibility mode.

Method 5: Enable Compatibility View for specific Web pages

Use the <Meta> tag
To enable Compatibility View for specific Web pages, use the following <Meta> tag after the <Head> tag on the page.
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
This tag overrides any HTTP header declaration in the HTML for a particular Web page.

The following sample code shows how to use this Internet Explorer 7 compatibility mode tag on a per-page basis.
<html>
 <head>
 <!-- Use IE7 mode -->
 <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
 <title>My Web Page</title>
 </head>
 <body>
 <p>Content goes here.</p>
 </body>
 </html> 
Important To make sure that the compatibility meta tag is used correctly, we recommend that the compatibility meta tag is positioned immediately after the <Head> tag and before any other metadata. Failure to correctly position the compatibility meta tag may cause Internet Explorer 8 to ignore the value and to continue to render in Internet Explorer 8 Standards mode.
Use HTTP response headers
If you use ASP.NET themes, use an HTTP response header to enable Compatibility View. To enable Compatibility View for an entire site, use an HTTP response header in the Global.asax file. If your site uses the Single-File Page model or the Code-Behind Page model, use an HTTP response header on each page.

Sample code
  • Global.asax
    void Application_BeginRequest() {
        Response.AppendHeader("X-UA-Compatible", "IE=EmulateIE7");
    
  • Single-File Page model
    <html xmlns="http://www.w3.org/1999/xhtml">
        <% Response.AppendHeader("X-UA-Compatible", "IE=EmulateIE7"); %>
        ...
    </html>
    
  • Code-Behind Page model
    protected void Page_Load(object sender, EventArgs e) {
        Response.AppendHeader("X-UA-Compatible", "IE=EmulateIE7");
    }
    
If you cannot use HTTP response headers in your environment, you can use code to move the <Meta> tags immediately after the <Head> tag. The following sample code shows how to do this in the Global.asax file or in an HTTP module.
void Application_PreRequestHandlerExecute() {
    var page = Context.Handler as Page;
    if (page != null) page.PreRenderComplete += delegate {
        var head = page.Header;
        if (head != null) {
            var q = from Control c in head.Controls where c is HtmlMeta select c;
            foreach (var c in q.ToArray().Reverse()) {
                head.Controls.Remove(c);
                head.Controls.AddAt(0, c);
            }
        }
    };
}
Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure. However, they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

For more information about how to define document compatibility in Internet Explorer 8, visit the following MSDN Web site:
http://msdn.microsoft.com/en-us/library/cc288325(VS.85).aspx (http://msdn.microsoft.com/en-us/library/cc288325(VS.85).aspx)

Similar problems and solutions or contact support

Collapse this imageExpand this image
To troubleshoot similar problems and solutions if you are a beginning-to-intermediate computer user, try our Guided Help.
Collapse this imageExpand this image
Guided Help for Web sites that are not displayed correctly or that do not work correctly in Internet Explorer 8 (http://support.microsoft.com/gp/pc_ie_v8intro)

Note This Guided Help content may not be available in all languages.

To contact support for Internet Explorer 8, visit the following Microsoft Web site:
http://support.microsoft.com/oas/default.aspx?prid=12357 (http://support.microsoft.com/oas/default.aspx?prid=12357)
For more information for advanced users, click the following article number to view the article in the Microsoft Knowledge Base:
949787  (http://support.microsoft.com/kb/949787/ ) Release notes and support options for Internet Explorer 8 Beta 2

APPLIES TO
  • Windows Internet Explorer 8
Keywords: 
kbtshoot kbgraphxlink kbexpertiseinter KB968499
 

Article Translations