
August 27, 2001. For web developers, that is a date that will live in infamy. On that unassuming August day, Internet Explorer 6 was officially released. No one could have foreseen the headaches IE6 would cause for developers. Who could have known that in late 2009 Internet Explorer 6 would still have 12.1% market share, forcing us to make sure our sites play nice with it. There have been many attempts to bring down our foe (here’s one, here’s another), but alas, IE6 won’t go down quietly.
IE6’s problems are well documented, but luckily for us a lot of smart people have found ways fix (or side step) those problems. Here is a huge list of hacks, fixes, and resources to make IE6 a little less painful.
IE6 Box Model Bug
More than likely if you’ve heard of only one IE6 bug, the box model bug is the one. In short, IE6 incorrectly calculates the width of a given box causing all sorts of layout problems. Here are some ways around this annoying bug.
- Box Model Hack
- Internet Explorer and the CSS Box Model
- About.com Box Model Hack
- The IE Box Model and Doctype Modes
IE6 PNG Transparency Bug
I touched on this briefly in my Quick Guide to PNGs post. There is a lack of support of the PNG alpha channel in IE6 causing transparent PNGs to render incorrectly. There’s a bunch of fixes for this using a lot of different techniques.
- IE PNG Fix 2.0
- PNG Alpha Transparency with MSIE
- Transparent PNGs in Internet Explorer 6
- Cross Browser PNG Transparency: Part 2
- DD_belatedPNG
- The PNG Problem in Windows IE
- PNG Behavior
- Degradable PNG Transparency for IE6
- PNG Image Fix for IE
IE6 Min-Height/Min-Width Bug
In another move that completely makes sense, IE6 ignores the min-height/min-width property. Don’t ask me why, I honestly haven’t a clue.
IE6 Double Margin Bug
This bug does exactly what you think it does. IE6 doubles your margins on a floated element. So, for instance, if you want a 10px margin IE6 makes it a 20px. It makes perfect sense, huh? Here’s how to fix it.
IE6 No Hover State Bug
IE6 only supports the hover pseudo-class on anchor (<a>) tags. Unlike modern browsers that support the hover pseudo class on any element. This bug especially becomes a problem when using lists (<li>) for navigation. Here’s a few work-a-rounds.
Other IE6 Bugs
Here are some fixes for a few other IE6 bugs.
General IE6 Hacks, Fixes, & Resoucres
- IE CSS Bugs That Will Get You Every Time
- Explorer Exposed!
- Ultimate IE6 Cheat Sheet
- 10 Fixes That Solve IE6 Problems
- 119 Bugs in IE6 For Windows
Conclusion
I hope this list helps you. Almost every single fix/hack I’ve listed has come in handy to me at some point. Please let me know if I’ve forgotten anything or left something out. I can’t say thanks enough to all the people who have taken time to develop solutions all of us can use.

