Microsoft has decided to remove conditional comments from Internet Explorer 10. This is not cool.
While IE has had more CSS bugs than other browsers, conditional comments have allowed us to target fixes not only to Internet Explorer, but to specific versions of Internet Explorer.
Try doing that with any other browser: it is extraordinarily difficult unless you use some truly hacktastic CSS, and that will likely hose things up down the line.
Even if IE10 perfectly implemented CSS as it exists at the point of its release, CSS will continually evolve. Eventually, IE10 will look “broken,” because new features will exist that IE10 does not implement.
If Internet Explorer auto-upgraded, as Chrome does, this would be no big deal. Or if nearly everybody upgraded when a new version came out—as is mostly true for Firefox, Safari and Opera—then no big whoop. Unfortunately, IE is different. IT departments often lag at upgrading Internet Explorer, primarily because intranet applications—rightly or wrongly—have been built to target a particular version of IE, regardless of standards, and upgrading them to work correctly in the new version of IE can cost time and/or money.
That’s what made the combo of conditional comments and the ability to choose which version of IE would be used to do the rendering of a site, through a meta tag, so potentially powerful. Between those two features, IT departments could upgrade IE much more easily: even if an application didn’t render quite right, it could still be set to legacy rendering, and all would be well.
I think in an ideal world, all browsers would auto-upgrade regularly to handle new HTML, CSS and JS features, and all would render sites exactly the same. But while we keep getting closer to web design nirvana, we’re not there yet. So losing conditional comments will make web design that much more difficult. Alas.