Note: If no menu appears above, please refresh the page.
Internet Explorer has come a long way with regards to the various levels of support that each version of IE has for the CSS standards. It was not until the release of IE8 that IE support of CSS2.1 became par with that of the other browsers. Now with IE9 beta out, IE support of CSS3 has become par with that of the other browsers.
This page documents current IE CSS bugs but also links to test case that demonstrate many well known or not well known bugs in earlier versions of IE. IE6 was supposedly the buggiest version of IE but in my opinion that honour should be given to IE7. This page is laid out showing CSS bugs in descending order of IE version with a clear heading for each version or range of versions. Additional test cases demonstrating CSS bugs can be found via this directory.
An old IE bug with transparent links.
Overflow hidden is now normally used to create a block formatting context for block elements beside floats. This stops the background or borders of such elements from appearing under the float. Now if the same element with overflow hidden has a horizontal margin with the value of auto (also width auto) on the side where the float is, in IE9 beta, this element will drop below the float.
Having a HTML attribute dir="rtl" or changing the direction
direction:rtl wrongly establishes a block formatting context.
Bugs that were present in the various versions of IE8 beta.
Images should not flicker when hovering semi-opaque images.
This was originally an exploration into the cause of the IE Escaping Floats Bug and the IE Peekaboo Bug. Now these bugs are squashed but the rendering bands are present in IE 8 (beta 1) causing problems when using alpha transparent images in both IE 7 and IE 8 (beta 1). This bug is also present in IE 8 (beta 2) with page zooming.
The bug that has arrived with IE7 now supporting the dynamic pseudo element
:hover. Mysteriously the bug was present in IE 6 in a primordial way, but was not fully understood at the time.
In a container without hasLayout, background images are misplaced.
This bug with absolutely positioned element following a float in the source. It happens because IE can not correctly offset auto. Please note that the test cases are incomplete.
If an absolutely positioned element with left auto offset is followed in the source by an element with a margin-left, IE5~IE7 will positions the absolutely positioned element by the value of margin-left of the following element.
A Test showing the adverse affects on vertical margins of paragraphs, headings and divs when a parent container has hasLayout which are in violation of W3C specifications.
Do you sometimes wonder where that gap has appeared between a float and a clearing div, maybe the gap is caused by a margin further up in the source.
These tests show a common scenario when the first element in a container is a float which is followed in the source by a static block element with a top margin. What should happen is margins should collapse.
These tests show a common scenario when the first element in a container is an absolutely positioned element which is followed in the source by a static block element with a top margin. What should happen is margins should collapse.
The Pee-ka-boo Bug was one of the worst bugs that struck in IE6 and was happily fixed in IE7, but IE7 still fails to sometimes render content if fed particular CSS.
A bug in IE7- where the margin-left of container without hasLayout is ignored if it parent is a hasLayout container and it's child is floated right.
A bug that was supposingly fixed with IE6 now rears it's head again due to the IE property hasLayout and its effects with floats.
In IE the list item
<li> has a affect on vertical margins of paragraphs and headings but when floated element are also present, a mysterious space appears.
Sometimes using display: none followed by floats cause another later element to have some of it's content duplicated.
In a container without hasLayout following a float, background images are misplaced.
A HTML comment between the
<?xml> prolog and the doctype throws any version of IE into quirks mode (IE5.5 mode).
Created: 9th March 2008
Updated: 6th December 2010
Copyright © 2008-2011 Alan Gresley
My dream... A one inter-operable open web!