Minor compatibility changes in IE11

Resources like the compatibility cookbook, the developer guides, and the IE Team blog are great at highlighting the major changes to Internet Explorer over time. However, the sheer number of code changes that go into the average release mean that many changes aren't covered by these resources. Here is a list of some of the minor changes made to IE11 that affect many frequently visited websites. It's not meant to be exhaustive, simply helpful.

ActiveX and plugin minor changes

Here are some of the minor changes related to Microsoft ActiveX controls, plug-ins, Browser Helper Objects (BHOs), and other browser add-ons:

  • For object elements, the classid attribute is ignored when the object is loading Flash. For other add-ons, the attribute behaves the same as in earlier versions of the browser.

  • Object and embed elements now use type attribute mime types over mime types registered with an ActiveX control's binary.

  • Setting the data property of an object element after setting the type property no longer triggers an exception.

CSS and layout minor changes

Here are some of the minor changes related to CSS and layout:

  • In interoperable quirks mode, simple selectors now support :hover rules that specifically identify targets.

  • In interoperable quirks mode, trailing whitespace no longer affects the width or visible container of a div element.

  • Invalid @charset declarations (such as those containing angle brackets) no longer invalidate an entire CSS file.

  • Starting with IE11 edge mode, table column widths are assigned as percentages of the total width requested.

  • Starting with IE11 edge mode, vertical clipping is more consistent with popular browsers for input type=text elements.

  • The textAlign CSS property now supports the inherit keyword.

  • When the align attribute is set to "center" on a div element, this no longer inherits into child tables of the div.

Graphics and image handling minor changes

Here are some of the minor changes related to graphics and images:

  • DOM Methods for attributes (hasAttribute, getAttribute) no longer return true for the width and height properties of images.

  • Images and object elements no longer display placeholder frames when src is blank.

  • Images will no longer generate exceptions when height and width are set to zero (0).

  • Non-progressive JPEG compressed images whose components span multiple scans now decode properly.

Form minor changes

Here are some minor changes to HTML forms and how they're handled:

  • IE11 no longer beeps when you press Enter on an input type=text field when a form doesn't contain a input type=submit element.

  • Pressing ESC twice now clears just the current field of a form, rather than the entire form.

  • Input events now fire consistently when you select items in a datalist element.

  • Click events no longer propagate from the label element to interactive child elements (such as a, input type=file, and so on).

  • When forms contain multiple input elements, Enter now generated a key event for the input element with focus, rather than automatically submitting the form.

HTML and DOM minor changes

Here are some of the minor changes related to HTML parsing and the DOM:

  • Calling insertBefore with undefined (or null) as the second parameter no longer throws an exception.

  • If you use createElement to create an img element bound to a cache image, the width of the new element will correspond to the width of the cached image.

  • Script elements with external resources should no longer execute during appendChild.

  • Starting with IE11 edge mode, initial frame navigation is a synchronous operation.

  • Starting with IE11 edge mode, the hidden attribute is now consistent with other browsers.

  • The document.readyState property no longer changes to "interactive" before the document is fully parsed.

  • The language property is now supported as an alias for the navigator.userLanguage property.

  • The date.toString method now returns localized values consistent with other popular browsers.

  • The value "x-gbk" is now supported as an alias for the "gbk" value supported by the charset attribute.

  • Unquoted attributes are now applied to elements when specified as the last item within the element (this is not recommended usage).

  • When a document request uses an XML MIME type, an XMLDocument is returned for the following: documents created using implementation.createDocument, DOMParser.parseFromString, and XMLHttpRequest. All other MIME types return document objects.

  • When creating an object element, the getVariable method is available when the object is created, rather than when it is instantiated.

  • Window objects associated with frames are no longer affected by moveTo, moveBy, resizeTo, or resizeBy.

  • The window.blur method no longer causes a window to go behind other browser windows.

  • You can now use createTextNode to directly add text nodes to XMLSerializer.

  • Object elements no longer support an onreadystatechange property. As a workaround, you can use addEventListener to register a "readystatechange" event.

IEInternals: Minor changes in IE10

IEInternals: Minor changes in IE9 RTW

IEInternals: Minor changes in IE9 RC

IEInternals: Minor changes in IE9 Beta

IE compatibility changes by version