Click to Rate and Give Feedback
MSDN
MSDN Library
Web Development
HTML and CSS
Internet Explorer 8

  Switch on low bandwidth view
What's New in Internet Explorer 8
New for Windows Internet Explorer 8

This topic introduces the platform features of Internet Explorer 8. Click here to download Internet Explorer 8 for Microsoft Windows XP, Windows Vista with Service Pack 1 (SP1), Windows Server 2003, or Windows Server 2008. The currently released version of Windows 7 includes Internet Explorer 8.

Note  Internet Explorer 8 is installed as a system update. To uninstall Internet Explorer, click View installed updates in the Tasks pane of the Add and Remove Programs control panel, then double-click Windows Internet Explorer 8 in the list of updates.

This topic contains the following sections:

64-Bit Downloads

Internet Explorer now supports download of files whose size exceeds 4 gigabytes (GB). Users of Internet Explorer 8 can take advantage of this functionality by default. Third-party extensions need to implement IBindStatusCallbackEx and return BINDF2_READ_DATA_GREATER_THAN_4GB from their GetBindInfoEx callback method. Download progress is reported through OnProgress by using the BINDSTATUS_64BIT_PROGRESS flag. These callback methods are supported by IMoniker::BindToObject and IMoniker::BindToStorage.

Accelerators

Because the Internet has become increasingly interactive, Internet Explorer 8 makes it easier to interact with content on a Web page. Accelerators are a type of browser extensions that act on Web page content by sending the information to a service of the user's choosing. Services then perform actions on the content (such as "email" or "bookmark") or provide more information ("translate" or "map"). Users can install and access Accelerators from the browser shortcut menu, making their browsing experience more efficient.

For more information, see OpenService Accelerators Developer Guide.

Accessibility and ARIA

In response to the increase in user interface (UI) complexity on the Web, the Web Accessibility Initiative World Wide Web link group has defined a roadmap for Accessible Rich Internet Applications (ARIA), which introduces ways for Web site authors to define how custom UI elements are accessed. ARIA accomplishes this by defining a set of HTML attributes that map back to common UI controls. As a result, users with disabilities can access Web sites with a rich interaction model. By exposing ARIA through the Microsoft Active Accessibility API in Internet Explorer 8, assistive technologies that already use Microsoft Active Accessibility can also support ARIA easily.

  • The alt attribute is no longer displayed as the image tooltip when the browser is running in IE8 mode. Instead, the target of the longDesc attribute is used as the tooltip if present; otherwise, the title is displayed. The alt attribute is still used as the Microsoft Active Accessibility name, and the title attribute is used as the fallback name only if alt is not present.
  • ARIA attribute syntax is the same in both IE8 mode and IE7 mode. Earlier releases of Internet Explorer 8 required a legacy property syntax when setting ARIA attributes in compatibility view. For cross-browser compatibility, always use the WAI-ARIA attribute syntax to access and modify ARIA properties, for example object.setAttribute("aria-valuenow", newValue).

For more information, see:

ActiveX Improvements

Internet Explorer 8 offers greater control over your Microsoft ActiveX installation and debugging.

  • Per-site ActiveX — Nearly half of all ActiveX controls meant to run on only one site do not use any form of site locking technology. This means that many controls are not secure by default and could be misused by malicious Web sites. To prevent this in Internet Explorer 8, users can decide whether to allow ActiveX controls to run on a site-by-site basis. For more information, see Per-Site ActiveX Controls.
  • Non-administrator installation — Standard users (those without administrator privileges) can install ActiveX controls to their user profiles without a UAC prompt or administrator involvement of any kind. In the event that a user does install a malicious ActiveX control, only the user profile is affected; the system itself is not compromised. For more information, see Non-Admin ActiveX Controls.
  • ActiveX Logging — Internet Explorer 8 can report the most common installation and instantiation failures, such as security restrictions preventing an ActiveX control from being instantiated properly. ActiveX logging is performed the same as other Internet Explorer compatibility logging, by using the Internet Explorer Application Compatibility Toolkit. For more information, see Using the Internet Explorer Compatibility Test Tool.

AJAX Enhancements

Asynchronous JavaScript and XML (AJAX) is changing the way Web applications are built. Internet Explorer 8 brings new functionality to the XMLHttpRequest object that enables AJAX applications.

  • AJAX Navigation — Client requests that do not trigger traditional Web page navigation can now update the hash property, which allows the Back button to function appropriately.
  • Connection Events — Where data reliability is a priority, AJAX applications can choose to save data locally if they are disconnected from a network. See onoffline, ononline.
  • Connections Per Server —  Internet Explorer 8 raises the number of connections per host by default, for a potential drop in Web page load times and increased parallelism in AJAX scenarios.
  • Cross-document Messaging — Documents in different domains can securely exchange data using postMessage. Documents that receive messages listen for the onmessage event.
  • Cross-domain Request (XDR) — To allow developers to more safely combine services from different Web sites, the XDomainRequest object restricts and secures communication between untrusted modules in a Web page. The browser shields the user from potential threats while allowing powerful cross-site interaction.
  • Timeout Requests —  Internet Explorer 8 adds the ability to set a timeout property on server requests.
  • Sanitize HTML — Easily remove event properties and script from HTML fragments with window.toStaticHTML.
  • Native JSON Support — JavaScript Object Notation (JSON) objects (used widely in AJAX scenarios) can now be serialized and parsed directly in Microsoft JScript. Use JSON.stringify to transform object data to a string and JSON.parse to revive JSON-formatted text. You can also fine-tune your object's output by implementing a toJSON method. These new methods are much faster than script, and safer than using eval.

For more information, see:

CSS Compliance

  • Table Layout — For many years, tables were the preferred layout mechanism on the Internet. With Internet Explorer 8, it is now possible to apply table-style formatting to non-table elements using the display attribute. In practice, CSS tables are more permissive than HTML markup; tables created with CSS rules will nest elements to become valid, whereas tables created with HTML will close containers to avoid unexpected nesting.
  • Data URI — This mechanism allows a Web page author to embed small entities directly within a Uniform Resource Identifier (URI), rather than using the URI to identify a location from which to retrieve the entity. This is primarily of interest for small images (such as bullets) used within CSS or layout. See data Protocol for an example.
  • Generated Content — Web page authors can render content that does not come from the document tree:
    • :before and :after  — In conjunction with the new content rule, authors can describe dynamic content to appear before and after most elements.
    • counter-reset and counter-increment  — Automatically insert numbers into your document.
    • quotes  — Easily insert language-dependent quote characters or smart quotes.
  • outline  — Enables elements to be highlighted without affecting their size. The outline is a shorthand property for outline-color, outline-style, and outline-width.
  • Printing — The following properties have been added:
    • page-break-inside  — Avoid page breaks inside an element's box; if necessary, Internet Explorer will move the element to the following printed page.
    • widows and orphans  — Control how many lines appear at the bottom and top of each printed page.
  • Additional pseudo classes — The following pseudo classes are supported by Internet Explorer 8:
    • :lang(C)  — Selectors can match an element based on the lang attribute of an element or one of its ancestors. The default language of the Web page is set on the html element.
    • :focus  — Applies while an element has the input focus.
  • Browser-specific attributes —  Cascading Style Sheets (CSS) properties that apply only to Internet Explorer are named with the -ms- prefix, such as -ms-writing-mode.

For more information, see:

For CSS test cases used by Internet Explorer, see Windows Internet Explorer Testing Center.

Developer Tools

The built-in Developer Tools of Internet Explorer 8 expose the internal representation of Web pages to help research and resolve problems that involve HTML, CSS, and script. Some features might be familiar to users of the Developer Toolbar released as an add-on to previous versions of the browser,

  • CSS Tool — Display various rules defined by style sheets loaded by your Web page.
  • Script Debugging — The built-in lightweight debugger enables you to set breakpoints and to step through client-side script without leaving Internet Explorer.
  • Script Profiler — Visually determine where your script is taking most of its time.
  • Version Mode Switching — Switch into different browser modes to test content for standards compliance.

For more information, see:

Document Compatibility Mode

With full CSS 2.1, strong HTML 5 support, and interoperability fixes for the Document Object Model (DOM), Internet Explorer 8 has made deliberate investments in a new layout engine. The highest level of standards support is on by default for sites that specify a strict !DOCTYPE. Web site authors can select the highest compatibility with Internet Explorer 7 by using the following meta tag:

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> 

The Emulate IE7 button of Internet Explorer 8 Beta 1 was replaced by the Compatibility View button Cc288472.compat_view_icon(en-us,VS.85).gif next to the Address bar. Click the button to quickly change between browser compatibility modes; you do not need to restart the browser.

For more information, see:

For setting up compatibility mode on a server, see:

DOM Storage

The ability to store and retrieve large amounts of data directly to a user's hard drive is important to browser-based applications that want to extend their reach beyond client-server interactions. Local storage is also comes in handy when disconnected from the Internet, and synchronize local changes when an active Internet connection returns. Scriptable online and offline connectivity events fire when connection status changes.

For more information, see Introduction to DOM Storage.

HTML and DHTML Improvements

The new HTML 4.01 implementation is now much more interoperable. The improvements include:

  • The object tag image fallback is interoperable with other browsers. For example, an object tag without dimensions is now the same size as the image, instead of 0 x 0 pixels.
  • The button element submits its value attribute instead of its innerHTML, which means you can use the button element for cross-browser FORM scenarios.
  • The getElementById method is now case-sensitive, and it no longer incorrectly performs searches using the NAME attribute.
  • The setAttribute method is now case-insensitive; you do not need to use "camel case" (for example, "camelCaseWord") to specify attributes. It also correctly identifies HTML attributes such as CLASS and FOR.

For more information, see:

Mutable DOM Prototypes

JScript now offers a way to override existing object methods and create new methods that apply immediately to all instances of objects. This tight binding allows scripts to manipulate DOM objects natively, as if they were actually JScript objects. By providing native DOM prototypes for elements, circular references, such as those sometimes created between Internet Explorer Component Object Model (COM) infrastructure and the scripting engine, can be managed directly by the JScript engine to alleviate hard-to-detect memory leaks.

For more information, see:

Protected Mode Improvements

In Windows Vista, Protected Mode restricts file writes to low-integrity locations, including cookies. In Internet Explorer 8, medium-integrity applications can access low-integrity cookies without user interaction, by using IEGetProtectedModeCookie and IESetProtectedModeCookie. As always, applications that use cookies downloaded from the Internet should assume that these cookies contain malicious data.

With Internet Explorer 8, you can control the browser after launching it from a medium-integrity process, even if it opens in Protected Mode. After invoking Navigate2, the NewProcess event will return a reference to the new WebBrowser object that has just opened.

RSS Features

  • Authenticated Feeds — the Windows RSS Platform can now perform authentication without user interaction. Username and password can be set in the Properties dialog box of the feed.
  • Effective ID — A hash algorithm is used to produce a unique ID for feed items. You can use this value to synchronize an item's read and unread states between computers, or to compare items in the Common Feed List with items stored by other programs.

For more information, see New RSS Features for Internet Explorer 8.

Search Suggestions

Internet Explorer 8 significantly improves the search experience of Internet Explorer 7with the following features:

  • Search Suggestions — Help users search for the right term as quickly as possible. Both JSON and an extended OpenSearch XML format are supported.
  • Visual Suggestions — Integrate image search and other descriptive content.
  • Improved User Experience — Using the Quick Pick drop-down list box and the Accelerator shortcut menu, you can easily select and switch between installed search providers. Also, using History Search, automatically find recently viewed Web pages without leaving the search box.

To learn how to integrate your search provider with Internet Explorer 8, see Search Provider Extensibility in Internet Explorer.

Security and Privacy

The following features make it safer to browser the Web:

  • Clickjacking Defense: Some hackers try to trick users into clicking buttons which appear to perform safe or harmless functions, but instead perform unrelated tasks. Clickjackers embed malicious code or "redress" the user interface by using transparent frames that overlay specific UI elements with misleading text and images. To help prevent clickjacking, Web site owners can send a HTTP response header named X-Frame-Options with HTML pages to restrict how the page may be framed.
    X-Frame-Options: Deny
    If the X-Frame-Options value contains the token Deny, Internet Explorer 8 prevents the page from rendering if it is contained within a frame. If the value contains the token SameOrigin, Internet Explorer will will not render the page if the top level-browsing-context differs from the origin of the page containing the directive. Blocked pages are replaced with a "This content cannot be displayed in a frame" error page.
  • Cross-site Scripting (XSS) Filter: This new Internet Explorer 8 feature makes "reflected (Type I) XSS" vulnerabilites harder to exploit. Script can be reflected when a portion of the HTTP request is used to generate the server's response, allowing malicious script in the request to run with the same level of access as the rest of the page. The XSS Filter monitors all requests and responses flowing through the browser. When the filter detects script in a cross-site request, it identifies and disables the script if it is replayed in the server's response. When this happens, a "Internet Explorer modified this page to prevent a potential cross-site scripting attack" message is displayed. Web developers who wish to disable the filter for their content can set the following HTTP header.
    X-XSS-Protection: 0
  • Delete Browsing History: As a user browses the Web, Internet Explorer stores user preferences, typed data, and information about places visited. It is possible that some extensions are doing the same thing. Previously, there was no way to for an add-on to know when a user cleared the Temporary Internet Files (TIF) folder or removed cookies and history. Now, by implementing the IDeleteBrowsingHistory interface, extensions can be notified when the user clears the browser cache, which enables them to delete their own stored data at the same time.
  • InPrivate Filtering: It's possible for Web sites to track users without using cookies. Internet Explorer 8 can ensure that a user's browsing habits are not disclosed by blocking content from and preventing communication with third-party content (images and script from another Web site that are incorporated into the Web page being viewed). InPrivate Filtering keeps a record of third-party items while a user browses, and (when enabled by the user) can automatically block Web sites that have provided third-party content to more than 10-30 first-party sites. Add-on and toolbar developers can detect whether the user has enabled InPrivate Filtering by calling IEInPrivateFilteringEnabled, or with script as follows:
    var enabled = window.external.InPrivateFilteringEnabled(); 

For more information, see:

Selectors API

Use the power of CSS selectors to rapidly locate DOM elements. The API introduces two methods, querySelector and querySelectorAll, that take a selector (or group of selectors) and return the matching DOM elements. With these methods, it is easier to match a set of element nodes based on specific criteria. The Selectors API provides significantly faster performance over non-native implementations.

For more information, see Selecting Objects with JavaScript.

Web Slices

Web Slices enable users to subscribe to specially marked content on a Web page. When the content changes, the user receives a notification on the Favorites bar where the content can be previewed without additional navigation.

For more information, see:

Zoom Enhancements

Internet Explorer 8 provides a higher-quality, more predictable and persistent zooming experience than does Internet Explorer 7. In addition to introducing more persistent zoom states, Internet Explorer 8 eliminates horizontal scroll bars for the majority of mainstream scenarios. New windows, dialogs, and pop-up windows automatically inherit the zoom level of their parent.

Related Topics

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Tab color issue      Gazmend Hoxha   |   Edit   |   Show History
I installed IE8 and noticed the change in the tabs color, but I think the previous version was clearer.
The nuance of color between the active tab and other tabs is so invariable that makes this feature annoying.
So please if you could retain the old IE7 color for the tabs.
Tags What's this?: color (x) ie7 (x) ie8 (x) problem (x) tabs (x) Add a tag
Flag as ContentBug
Tab Browsing      Sherif Agar ... John Sudds   |   Edit   |   Show History
As you can choose to open a link as a new tab or new window, is there a way to seperate a tab as a new window? Or even place an opened window as a tab? This would give the user a lot of flexibility and control.

[jsudds.MSFT] No, not in IE8.
Flag as ContentBug
can we get...      Mr. Raymond Kenneth Petry   |   Edit   |   Show History
Improved accessibility: native-mode, right-mouse-button:
A. Moving: drags the document up-down, left-right;
B. Stationary: opens Contextmenu Dialog;
C. Restore free-scrollability, cf MSIE-6, where MSIE-7 snaps-back on button-release.

And,
D. style=parameter:expression(...) in MSIE-7-Compatibility mode?
E. Increased DOM-storage in MSIE-7-Compatibility mode?
Why MS is so stingy on Favorites?      Mark36es ... John Sudds   |   Edit   |   Show History
Let's be honest. Everybody who used Firefox love "Bookmarks". User interface friendly and most important you can search inside bookmarks. I've got a feelings that IE developers never used anything but "Favorites" and they never had a case where you need to find a link fast.

[[ jsudds.MSFT ]] Hopefully you've discovered by now that you can search your Favorites by typing keywords into the address bar in IE8. If it doesn't work for you, make sure you have the latest version of Windows Desktop Search installed.
Flag as ContentBug
copy / paste into Excel works      cybra   |   Edit   |   Show History
copy from a html table and paste into Excel is now working.
Tags What's this?: Add a tag
Flag as ContentBug
Opening as a Tab      nrchason84 ... John Sudds   |   Edit   |   Show History

When I right click on a link in IE8 the only options I am given are to "Open" or "Open a New Window". Isn't the point of tabbed browsing to be able to open links into a new tab in the same window?

Tags What's this?: Add a tag
Flag as ContentBug
IE ERROR MESSAGES ARE USELESS      Kashif Nasim ... Thomas Lee   |   Edit   |   Show History
As a developer i am feeling that, IE needs to show some relevant errors, "object is null or not an object" does not make any scene. always shows incorrect line number and no file name. If IE developers works on it this will be very helpful for developers.

Now there 8th version releases i am 100% sure they didn't fix that, every time i have to open firefox to check the error this is very frustrating.

OLD ERROR ARE STILL THERE      Kashif Nasim ... John Sudds   |   Edit   |   Show History

Version releases but old bugs are still there, here is an example of common bug in each version of IE.

if your HTML contain the html element with the attribute name="length"

<input type="text" name="length" />

now write a simple loop it will never work because "document.all.length" will returns you input element instead of length of collection.

for(i=0;i<document.all.length;i++){
alert(document.all[i].nodeName);
}

[[ jsudds.MSFT ]] Please avoid using the document.all collection. It is not cross-browser compatible, nor is it especially good for your application's performance. And, as you have pointed it, it can lead to esoteric bugs in script for the unwary.

Tags What's this?: Add a tag
Flag as ContentBug
Switching Between IE8 and IE7 Browser      Vivek Reddy   |   Edit   |   Show History

Hi

I Need to test my site on both IE8 and IE7.Curretly i am planing to test my website by using IE8-developer tools-Swich between
'Browser Mode :IE7 ,Document Mode: IE7 Standards' to 'Browser Mode :IE8 ,Document Mode: IE8 Standards' .Is this reliable , if not I am going to use my old methods like using virtual machines (only one browser in one machine). Please advice me.

Thanks in advance

Regards,
Vivek

Tags What's this?: browser (x) ie7 (x) ie8 (x) mode (x) switch (x) Add a tag
Flag as ContentBug
popups      newinternet8   |   Edit   |   Show History

how do you stop popup small windows, in internet 8

help newinternet8

Tags What's this?: Add a tag
Flag as ContentBug
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker