Internet Explorer Standards Mode 
January 12th, 2007
I love Internet Explorer. Today we discovered that in IE7 CSS pseudo classes like li:hover work fine in standards mode but not in quirks mode. What on earth were they smoking when they decided to add functionality to standards mode and not quirks mode? w00t!
Del.icio.us
This entry was posted on Friday, January 12th, 2007 at 2:17 am and is filed under Web, InternetExplorer, CSS, DHTML. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

January 12th, 2007 at 7:24 am
As bad as this is, this was communicated by Microsoft at there IEBlog. Also min-width, max-width etc. does not work in quirks mode.
January 24th, 2007 at 12:08 am
The rationale, as I understand it, is that quirks mode should be consistent, so that pages which were relying on certain behavior, box model layout, etc. will not break when Joe User upgrades to IE 7.
We all know most developers only touch IE after they’ve polished it a little on their browser of choice; having to test pages on both IE 6 and IE 7 (and IE 5.5 or 5 for some of us — and don’t get me started on the cartwheels that have to be done to get two versions of a browser on a machine.. it’s easier to just have multiple test machines). For a lot of developers this means that having a page work in two different ways could complicate things (do you code for the still-predominant IE 6 or code for the fixed version?).
So, what IE did was fix some of standards mode (I agree there’s still more to go, yet) and keep quirks mode the same. If you don’t put up a DOCTYPE or if you know you’re in “quirks mode” you don’t have to worry about “fixing” your site to work for IE 7. If you want to plant a stake in the soil you can stay in strict mode (or “standard” but that’s a moving target) and do what you can to make sure it doesn’t break the browsers your visitors use.
IE isn’t my browser of choice. But, I wouldn’t say they were smoking something…
January 25th, 2007 at 9:24 pm
Good points Kevin.
I think that if, as in this case, you are updating standards mode to support things like proper pseudo classes which is essentially “breaking” what people expect in standards mode. From our experience, most people (ie our customers) are using standards mode. So why not “break” quirks mode too? It’s not even really breaking quirks mode IMHO since if you are using quirks mode you would not be using pseudo selectors anyhow. It is difficult for new functionality to break your current web pages.