Forum Moderators: open
1. “Quirks mode” remains the same, and compatible with current content.
2. “Standards mode” remains the same as IE7, and compatible with current content.
3. If you (the page developer) really want the best standards support IE8 can give, you can get it by inserting a simple <meta> element. Aaron gives more details on this in his article.
By 'current content' they mean non-standards compliant HTML.
Another interesting point is that 200 websites dictate the standards of the ENTIRE web.
When we released IE 6 in 2001, very few pages on the web were in “standards mode” (my team ran a report on the top 200 web sites at the time that reported less than 1%) – few people knew what a DOCTYPE was, and few tools generated them.
....
It turned out by the time IE7 shipped in late 2006, roughly half of the top 200 US web sites were in “standards mode”. Many of those sites had been “opted in” to standards mode by a tool that generated their content; many of them had probably been hand-coded by someone who was trying to do the right thing, and make their HTML code valid according to the W3C. Regardless, users of those sites expected them to keep working the same, even when they downloaded a new version of IE. Unfortunately, that didn’t happen.
[blogs.msdn.com...]
[alistapart.com...]
Using a simple meta declaration, we can specify the rendering engine we would like IE8 to use. For example, inserting this:<meta http-equiv="X-UA-Compatible" content="IE=8" />
into the head of a document would make IE8 render the page using the new standards mode. This syntax could be easily expanded to incorporate other browsers as well:
<meta http-equiv="X-UA-Compatible" content="IE=8;FF=3;OtherUA=4" />
[edited by: encyclo at 5:02 pm (utc) on Jan. 22, 2008]
[edit reason] fixed link [/edit]
Version Two [meyerweb.com]
As for the proposed default behavior, where noinformation gets you the IE7 rendering, I can’t defend that, nor do I have any wish to defend it. I tried for most of an hour to convince a member of the IE team that the default behavior should be "latest", not "IE7", and was unable to make a sufficiently persuasive case - by which I mean a case that overcame the (perceived) needs of the IE team. My hope is that someone will succeed where I failed.X-UA-Compatible
I think a lot of people are discounting the fact that version targeting is absolutely nothing new in the standards world, let alone the web development world. Conditional comments, CSS hacks, and the DOCTYPE switch itself are all examples of version targeting.
I think that the division lines here fall between those who see this as just another hack to make their designs cross-browser friendly, and those who want standards in order to remove the need for those hacks. There are a lot of extremely talented people who push CSS to its limits, and for whom versioning and browser-specific hacks are vital tools. I have a lot of respect for their skills, but I disagree with the approach - it is a completely different vision of what web standards should be.
The fundamental failure of this proposal is that you should never have to use non-standard markup to enforce standard behaviour. Introducing a non-standard meta element/HTTP header to force a non-standard rendering of a page is one thing, but making pages that respect the standards be parsed by a deficient rendering mode just because some non-standard code is absent is plain wrong.
<edited for spelling>
[edited by: encyclo at 11:20 am (utc) on Jan. 24, 2008]
The fundamental failure of this proposal is that you should never have to use non-standard markup to enforce standard behaviour. Introducing a nen-standard meta element/HTTP header to force a non-standard rendering of a page is one thing, but making pages that respect the standards be parsed by a deficient rendering mode just because some non-standard code is absent is plain wrong.
encyclo,
What on earth does this mean? Has George Orwell come back from beyond the grave and taken over as moderator?
With all respect, I can't follow your thought pattern here at all.
I think we should never, ever use non-standard standards to enforce standard-based rendering standards when the parsing of the non-standard but yet standard-referencing metatag is non-standard in and of itself.
So there! Right back atcha...
I think what he said was quite clear too. Adding a non-standard meta tag to every standards-compliant page to force one supposedly already-standards-compliant browser to render correctly is... onerous and backwards, if not unethical.
[edited by: Josefu at 6:46 am (utc) on Jan. 24, 2008]
"The question is, how long will this cycle continue? Web standards are supposed to avoid this exact issue."
- Doron Rosenberg, Mozilla"Finally, while we sympathize with the tough road that the IE team has to travel to achieve a high degree of standards compliance, we haven’t really experienced the same problem. The IE team has mentioned severe negative feedback on the IE7 release, due to sites expecting standards behavior from most browsers, but IE6 bugs from IE."
- Maciej Stachowiak, Safari Webkit"Finally, it seems, Microsoft has decided to take Web standards seriously... Unfortunately, I think that the celebration is premature. I predict that IE 8 will not pass Acid2, after all."
- Håkon Wium Lie, Chief Technology Officer at OperaOperaWatch Article [operawatch.com]
They could have built a backwards compatibility browser and an new browser, they could have set the default to standards and then get broken sites to do the work.
Yes they could have, but not all sites or HTML applications can actually be worked on (CD/DVD Roms, intranets, software applications), default behaviour set to standards could potentially break a lot more than the web.
If a proper standard is to be achieved without breaking the web, there has to be some sort of compromise.
Hmm, yes I knew there was something bothering me about the version lock, not the tag itself but the version number lock - we shouldn't need version targetting for IE as there's conditional comments already - Would it better for both sides if they took out the version number lock, and just used the equivalent of the edge mode - so we get either IE7 or Post IE7 rendering - that way they would be showing that although asking web developers for a little work going forward they are also promising to lock themselves into following the accepted standards.
mmm - I wonder if this is what's behind the "standards" bit in Opera's anti-trust suit
If we let them be able to change their rendering based on version numbering, they get to write their own standards and say ooops if you don't like it lock into another version or default to IE7 behaviour, which may be OK for application developers but not good for websites. Meanwhile the other web browsers are slowly frozen out because they can't get on with their progressive enhancement of standards behaviour unless they too accept MS's standards - but then that would would mean a monopoly will again be formed.
Yes they could have, but not all sites or HTML applications can actually be worked on (CD/DVD Roms, intranets, software applications), default behaviour set to standards could potentially break a lot more than the web.
If I remember correctly, those crappy cdroms all use autorun to launch iexplore.exe so there would be no problem at all if the legacy browser was called iexplore.exe and the new one called iexplorewithsuperstandard.exe.
The real reason is that Microsoft do not want to admit that their tools and browser were broken for all these years. They have to pretend that it is websites that are all to blame because they coded to IE6's bugs. They forget to mention that 90% of this bad code was generated with THEIR tools.
Nobody believes his '50% of the top 200 sites' lie. Where is the data for the stats which are so crucial to his argument?
Two things:
If Microsoft were to release IE8 and "break the web" as some people would like them to do in the false belief that this would force all sites everywhere to re-design and that such a thing is actually moral, I believe the entire IE team would and should lose their jobs.
Why anybody expects Microsoft to do something that is so clearly against their business interests is beyond me.
The IE team did not consult the standards bodies for permission to do this. They had to do this - the only question was the implementation.
Microsoft is a business, if you want to force MS to implement standards compliance and then force it down everybody's throats, then the appropriate entity to approach is the government.
[satire] At the same time maybe we can force everybody to use gzip and improve download times. Let's all make a list and email our congressman. [/satire]
Second, all the versioning tag does is shift the burden of responsibility for making use of standards from browser-makers to the very people who make up the web: authors and users.
What seems to be sticking in some people's craw is, incredibly, this newfound responsibility.
If you're using IE8 and the site you're visiting doesn't make use of standards-based features that you think would be helpful, complain to them!
What seems to be creating a lot of anger is that with IE8, there will no longer be a single target to shoot arrows at: Microsoft.
What seems to be sticking in some people's craw is, incredibly, this newfound responsibility.
What seems to be creating a lot of anger is that with IE8, there will no longer be a single target to shoot arrows at: Microsoft.
I think you're right on 1 wrong on 2. So few people even understand this...all they get is they have a new tag and need to learn when and how to use it.
The IE team did not consult the standards bodies for permission to do this. They had to do this - the only question was the implementation.
I agree with you on the permission thing, and am glad that at least they consulted with standards advocates as to the how. With the news being released the way it was via. the Standards community favourite publication, rather than via Microsoft itself (where the the MS 'haters' would stick around raising the noise level much longer), and then Zeldman and Meyers subsequent blog posts.. perhaps suggests that either:
MS are still not locked down to it's implementation and are looking for reasoned views from the wider community - I've read a lot of the later posts on Zeldmans site now and can now see, as the reasoned discussion is starting, it's not an easy decision for either side.
or
MS are holding the standards for ransom - it's this way and you get commitment to the Web Standards going forward or our MS way with our standards, sort of thing.. this way at least keeps alive some hope, indeed the ability, for IE to become more Web standards compliant from this point - BUT at the same time it also keeps alive their ability to do things their own way at any subsequent version - and if the advocates can't make the community see this and the method is rejected, it's MS Standards.
-------
Version targetting, I can see now, has pros and cons for both sides too.
1. Web Devs lose the "progressive enhancement" ability when authoring sites and building software applications
2. Web Devs gain a certain amount of security that once locked in, they do not have be up into the wee small hours after an IE release updating all their client sites, or patching software and can do it to their own schedule if and when required
3. Web Devs gain by being able to test and back test features without having multiple IE's on their machine.
4. MS lose by having to maintain engines for for all subsequent releases
5. MS gain by not having to immediately (or ever) recall or patch buggy releases but can instead release betas which can be tested by developer community using the version upgrade feature
6. MS gain by ensuring that their user base never again needs to complain about their web breaking
All of this will (or should) happen during a period when we're actually stuck with a majority IE6/IE7 user base anyway - so we have time to educate and update software (with new doctypes and ie tags)
.
Just some random thoughts while trying to really figure out if it's a good bad or inevitable thing..
Microsoft ~has~ to fix its browser, sure, but it doesn't ~have~ to use a method that obliges webmasters to add content to their pages only for that browser - work renewable with every new version of IE. Cleaning up old pages is perhaps grumble-worthy, but at least that would be working forward.
Microsoft has cost thousands of webmasters hours of work already - there's no lacking of things to hate there. Yet if MS chose a forward-thinking solution for their faults, I would be feel happy for them. As I was when they first annouced that IE8 would be standards-compiant - without the catches.
Do you guys remember the nuisances caused by Netscape browsers versions 4.x? Or the earlier Netscape extensions?
The nuisances caused by designing for IE6 - IE7 plus the latest versions of Firefox, Opera are NOTHING compared to the problems given by Netscape versions 4.x and the proper rendering in other browsers of that time such as IE 4 and IE 5.
Now that we're a few days from Netscape R.I.P. , be sure that the guy who authored [blogs.msdn.com...] will help greatly in the transition from IE 6 - IE7 to IE 8. Chris Wilson was the NCSA guy that first ported the original Web browser Mosaic to the Windows platform in 1993.
Hence, can't think of someone more capable than Chris to help in this transition.
[edited by: zafile at 11:01 pm (utc) on Jan. 26, 2008]
Latest by Eric Meyer [meyerweb.com]
I would give you a snippet but it's too long and I don't want to quote the whole thing. Basically, he faced a similar problem at Netscape where they made the latest version compliant, iow, fixing the browser...the fix broke some top 10 sites. The top 10 sites refused to alter any of their code to work with the upcoming version. Meyer was told to make it work or don't ship. The team was able to identify unique code on the offending sites and created a different rendering just for them.
This is not unique either. I had some emails w/ Opera developers a few years ago and I learned that they have often done the same type of thing...
Anyway, MS's biggest problems are not the web customers it seems. It's the Intranet's that will break. Big corporate clients, running custom software apps. They stand to lose a lot of money if they break things.
And it gets far worse. Read Isolani [isolani.co.uk], a WebDev @ Yahoo! Europe to really get how severe this problem is:
Internet Explorer Reality
And yes, the Microsoft definition of 'break' is probably a lot larger and complicated than Jeremy Keith's. We don't know entirely, because Microsoft are hiding behind an NDA.Changing the unchangeable
Jeremy considers webservers, but not other forms of distributing HTML content. How easy is it going to be to configure a webserver, or add a meta tag to HTML documentation on CD? It's not just a case of editing the HTML and reburning to the CD - what about making sure everyone who has the old CD now has the new one?
Compiled HTML is another source of grief - every chm ebook ever published relies on an IE renderer library to display its content. That content is authored and then distributed to many people. Again, the HTML editing is simple, but the actual redistribution of the non-broken version is a massive problem.
Consider also the number of Windows applications that use the Internet Explorer rendering engine as a component of the application. All the content and logic for those applications would need to be updated, and the application would need to be re-shipped to all the users of that application.
The point here is that web's solution is remarkably simple, it's a case of fixing the problem in one place, and then everyone then receives that one change with no massive redistribution effort. The ebook providers, the software authors, the software documentation authors - all run into massive problems.
Any application that uses the internal renderer as either a viewer or an editing interface is going to break because of Microsoft's browser update - particularly if they follow Jeremy Keith's recommendation.
Sure, redistribution is just a link to a website to download an update. But every software product, every ebook title, every software documentation would need that redistribution. It's not a couple of web pages any more, it's the entire Windows platform, the operating system and all applications (including third party software) that would need updating.
Too close to the metalThis points to a grievous mistake on Microsoft's part: integrating the browser (well, the rendering engine) as part of the operating system.
A change in the rendering affects not only web pages, but local documentation, software applications, even so far as the file-system browser Windows Exploring. They all use the Internet Explorer renderer. The moment that renderer fails, or decides not, to render the content it used to render - that is a problem Microsoft want to avoid.
There's more though, including legal issues...you should read the whole thing.
It's a big mess and a huge problem for Microsoft no matter how they solve it. It isn't just Microsoft wanting to throw the burden on the web. They have customers who are dictating their policies by the nature of the situation.
I'm sure they are not thrilled at the idea of embedding older engines in new versions of i.e.
And it does seem crazy that the default rendering of ie8 would be the ie7 engine.
Here's an example where open source might work better than for profit browsers.
Firefox fixes bugs quicker, larger, free workforce behind them. Had the IE team fixed their issues quickly, perhaps this wouldn't matter. But also, Firefox doesn't have to please Intranet clients the same way, nor do they have their code embedded into the operating system.
Edited to add:
It really seems to me the best way to handle this for Microsoft is not to release IE 8 or make it the last version. They should start from scratch. Brand new browser. Built from the ground up to adhere to web standards. This way the code written for ie6 or ie7 could be ignored for the new browser. Doesn't hurt the old clients. Doesn't hurt Web Standards. It is radical.
The downside for them is the investment they made in merging the OS w/ the browser....
It's a bold step that could also take Microsoft in a whole new positive direction.
If not, maybe we should all start a renewed campaign to bring those Firefox penetration numbers into greater than 50%. Not to mention that Google may yet come in with a browser of their own and the Mac is building momentum... IE may is facing major challenges...
[edited by: Clark at 7:53 am (utc) on Jan. 29, 2008]