Wednesday, February 6, 2008 1:27:45 PM
This assumption is WRONG, WRONG, WRONG.
Opera had to follow Mozilla and add an almost-standards mode (which wasn't so bad actually since Eric and Mozilla defined very clearly what the mode was about). If META X-UA-Compatible gets used on the web, we WILL encounter pages that apply CSS meant for a very specific quirk in IE8, and we will have to do something about it. And if Microsoft has taken this shortcut without documenting the IE6/7/8/9 quirks it covers, we're left to figure that out with time-consuming testing. The cost of being compatible is again placed on IE's competitors.
Today at least the HTML standard is being actively developed. CSS development is less open so I don't know what happens - if anything at all - but we have a situation where Microsoft could use fresh implementation experience to improve the specs, tell us what is compatible with the web and what isn't.
A small story to show what I mean by that: the CSS "display" property used to have the values "none", "inline" and "block" (maybe others, I'll simplify). At some point the CSS group decided to also add values like table-row and table-cell.
The problem was those styles also worked "in reverse", so a "TD style='display:block'" would not be a table cell anymore - it would become a block element, and thus mess up most of the table it was a part of! And because several important existing sites were hiding TDs or TRs by setting style.display='none' and showing them again by setting display back to 'block', Opera ran into serious problems. Sites like allmusic.com broke in very ugly ways. (Besides, they weren't exactly quick to fix it when we pointed it out to them..)
In this situation, it would have been sweet to be able to go back to the working group and say: "look, we had some problems supporting this spec-in-progress, could you consider changing 'display: table-row' to for example 'table-display: row'?" What if Mozilla instead of implementing almost-standards-mode could have discussed whether the standard could resolve the dilemma?
Microsoft has this window of opportunity with HTML5. It probably has it with CSS3. So please join the collaboration - detail by detail - instead of ramming a maddening number of X-UA-Compatible modes down our throats.