In defense of version targeting is a follow-up article by Jeffrey Zeldman to his previous post and the topic of browser version targeting feature planned for the upcoming release of Internet Explorer 8. His arguments (in favor of version targeting) might seem to be valid at first, but they are not enough in comparison to those who are against the version targeting.
Let’s start with an example (dates and browser versions are made up and are not important to illustrate the point). I made a website a two years ago (in 2006) and followed the W3C standards which resulted in a perfect content rendering in most of the standards aware browsers.
Luckily the layout was displayed perfectly also in IE6 just because of the additional <div>
wrappers I added knowing about the typical rendering issues of IE browsers. Although I couldn’t get the heading numbering to work (through CSS2 content
property), it was still not a problem, because no functionality was lost in neither of browsers.
A year later Microsoft announces that they will release IE7 which is going to be a super-standards compliant browser, therefore a meta
tag has to be added to all websites that wish to have a standards based rendering of their content.
When they finally release the browser, nothing has changed — or maybe everything has changed? My website was developed according to the standards, but it still looks the same in the “new” version of IE7 as it did in the buggy IE6. And so does every single website built with standards in mind, although they were designed for any capable browser to make use of the content presented according to the standards.
What does the Microsoft want?
One might argue that adding a single line to a CMS’s HTML output is not a big deal. It is true, but why do the developers have to check if every new release of IE requires some changes to be made to HTML, if everything was once built following the standards?
I am not against that single line of HTML, but I am afraid of any further IE (or other browser) releases which can force more code additions. At the same time it is more concerning that such requirements contradict with the W3C suggestions and override standards. Isn’t this what “breaks the web”?
So what is the most reasonable solution? Is it — to change the meta tag from opt out to opt in. Will the problem be solved then? No, it won’t, because in that case everyone who has a website with invalid HTML will have to add the meta tag.
But why did Microsoft want to add this version targeting at the first place? They must have wanted to free certain site authors/owners from being required to make changes to their invalid websites.
Does changing opt out to opt in then solves Microsoft’s concerns? No, it doesn’t! Then what are the options left to Microsoft?
Honestly, none other than the original idea of halting progressive enhancement of the Web and forcing website authors to use the meta tag if they want their websites to be rendered in standards-mode in any future versions of IE.
Winers and losers
Those saying that imposing such obligatory requirement is not imposing an additional standard are wrong. All the efforts by developers to create standards based documents (defined by a DOCTYPE
of their choice and valid code) are immediately cut short if no meta tag is present in the header of the document. Isn’t this interfering with Web standards and the basic building blocks of the Web? Isn’t this “breaking the Web”?
Once again, is the meta tag really a solution to Microsoft’s problems?
Wouldn’t it be better (even financially) to immediately adopt web standards and suffer initial client and financial losses, knowing that in a very near future this will pay off. Although there are no guarantees for that, of course, but it is the opportunity for Microsoft to change the Web and the way people perceive the company.
It has been already mentioned that small businesses, organizations, libraries and schools might be the ones that are hurt the most by such decision. But are these really the institutions that Microsoft’s revenue depends upon?
Because of the reasons mentioned above, the first argument by Mr. Zeldman: “With version targeting, IE stays on the path of web standards” is false, because the version targeting (in a form as currently suggested) discourages progressive enhancement and breaks the Web standards.
The second argument: “Without it, ineptly made websites “break,” putting IE’s standards compliance at risk” is only partially true, because there are going to be much more websites that will be disqualified from standards based rendering in IE8 by default (those without the meta
tag).
Also the final point: “If IE were to stop supporting standards, standards would stop working” is incorrect. And not because there are ways of proving that standards would evolve without the support of Microsoft, but because there has been no support for the standards movement (in general) from Microsoft until now. In fact, standards were born and sent to high school without the support of Microsoft.
Note: for other points of discussion, see my first post on this issue: Browser Version Targeting vs. the Web Standards
Update (January 24, 2008): The Verdict
The idea seemed absolutely wrong at the very beginning when I wrote these two article, but the more I think about it, the more I understand the supporter’s key argument — that version targeting is in fact the only way for Microsoft to start implementing the support for standards, which we all have been hoping they will do in some very distant time in future.
The truth is that by making this huge (and maybe uncomfortable step for the Web standards purists) Microsoft can start supporting standards much faster than one could possible think of. And that, in return, is very important to the Web standards purists.
Therefore we probably have to let them make this bad move for the very last time, because from now on they will be able to concentrate on standards, and make an enormous leap without hurting anybody.
At the same time this should be an IE-only “feature”, because in general the idea of such a meta
tag is bad (when excluding the argument of Microsoft’s past). The only ones who can be hurt by this move are the Web site owners/authors/developers who have built everything according to standards and were expecting future enhancements (without an extra treat) as browsers develop. But in reality they are the minority of Web content producers, who are better able to adapt than those who have built everything without adhering to standards.
Therefore — go Microsoft, implement this feature and do it fast! But more importantly — release the standards aware IE8 by the end of this year, and nobody will be angry with you.