Why does ie9 go to quirks mode
The list is most probably not exhaustive. It relates mainly to IE 7. Other browsers may have a Quirks Mode that does simulate old versions of IE to the same extent. The following simple images demonstrate one of the many differences between Quirks Mode and Standards Mode on Internet Explorer, namely the box model.
In Standards Mode, it specifies the width of the content of the element, so that the total width of the box 12em plus the widths of the borders. On Firefox, the correct box model is applied in both modes. A form that should have yellow background. If the form has a border set for it, it may be drawn incorrectly, excluding some part of the form.
There is a simple separate test page for this IE 7 bug. This bug has been observed on Opera, too. Whether the bug is triggered seems to depend on how the content of the form starts, in terms of markup. This bug appears in both Standards Mode and in Quirks Mode. Eric offers an older example from the time he still worked at Netscape. Webmasters simply weren't interested in the "you're doing it wrong so that's why your site breaks in our new version" argument—and they're right, from their point of view.
With version targeting, IE7 will never go away. Just as browsers are born, they must also die and make way for the next generation. IE, Libraries, Theory Permalink.
Microsoft had the choices of either having some opt-in to improved standards support, or not improving standards at all. Now, every angry and disappointed web developer out there, if you look at it that way, which one would you prefer? Standards with an opt-in or no standards at all? 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. That's certainly something I feel people are generally disregarding.
The difference between the doctype switch and CSS hacks on the one hand, and the new version switch on the other, is, of course, that the first is widely known and the second one is new. Fun, IE, Theory Permalink. IE has a specific problem the other browsers don't have: Intranets maintained by people who are not and maybe do not want to become web developers, let alone standards-aware web developers.
Doctypes were also necessary to create valid X HTML; the meta tag does not have such an extra function. Therefore it will only be added because web developers want to switch IE to a certain mode.
The argument about expected rendering behavior is even more absurd. No serious developer still believes that what IE renders is actually correct. We automatically define "web developers" as "standards-aware web developers".
Unfortunately there are plenty of other web developers around. Feel free to denounce them as incompetent, but do not deny that they're an important factor, especially for Microsoft. They are the ones who maintain Intranets created specifically for IE, and any implementation of the standards in IE must take their needs into account, or fail miserably for business reasons.
Roger Johansson disagrees with the versioning switch—for now. He keeps open the option of changing his mind in the future, though. Alex Russell agrees with the versioning switch, though he has quite a few important questions about details. Dean Edwards disagrees with the versioning switch, and also objects to using WaSP as a front. That last criticism rings true: WaSP as a whole wasn't involved in this decision, and it shouldn't be pretended that it was. The Safari team Maciej Stachowiak speaking explains why the versioning switch will not be implemented in Safari any time soon, though they do not pass judgement on IE for implementing it.
Ian Hickson disagrees with the versioning switch. I can't resist the temptation to reply to some of his arguments. If Web authors actually use this feature, and if IE doesn't keep losing market share, then eventually this will cause serious problems for IE's competitors — instead of just having to contend with reverse-engineering IE's quirks mode and making the specs compatible with IE's standards mode, the other browser vendors are going to have to reverse engineer every major IE browser version, and end up implementing these same bug modes themselves.
It might actually be quite an effective way of dramatically increasing the costs of entering or competing in the browser market.
This is what we call "anti-competitive", or "evil". I believe Ian paints the current situation too black. True, other browsers will have to take some IE bugs into account when updating their rendering. However, one of the points of the versioning switch is to allow IE to become more standards compliant, so the difference between IE's higher rendering modes and the other browsers would become smaller and smaller as time progresses—which means less and less implementations of IE bugs are necessary.
It will also increase the complexity of authoring by an order of magnitude. Big sites will become locked in to particular IE version numbers, unable to upgrade their content for fear of it breaking.
Unless they decide to redo their sites and hire competent web developers, who'll switch to IE's highest feasible mode. OK, that won't happen everywhere, but in general those sites that won't be updated to a higher IE mode won't be updated today, either, so the situation will not get worse. Besides, this is the other point of the versioning switch: if you don't want to update, you don't need to.
Eventually this will go for Intranet sites more than for Internet, where the existence of other browsers will have a mitigating effect. Imagine in 18 years — only twice the current lifetime of the Web! Or they could decide to upgrade to the highest feasible IE version. In fact, I feel that the situation Ian sketches could increase the standard-awareness of web developers.
The alternative is that they don't want to learn anything and will stay locked in IE7 mode permanently. That would be a pity, but again we're not worse off than we are today. Today, plenty of web developers don't want to learn the standards, either. Microsoft is in a really tough position.
They have really been trying to listen to web developers clamoring for better standards support. They are also listening to their partners, big corporations with thousands of Internet and intranet pages that would cost them millions to upgrade. Microsoft got slapped when IE7 broke some pages by fixing layout bugs; they couldn't afford to repeat that mistake.
Whether we like to admit it or not, there are tons of web sites that are designed to work specifically for IE6.
There literally is no good move for Microsoft to make in this vein. Either they do nothing and don't break the Web but garner the ire of web developers everywhere, or they pacify web developers by forcing standards on everyone and break tons of web sites and web applications.
This is the literal rock and hard place scenario. Microsoft is trying to satisfy both conditions and I honestly feel that this is a huge step forward for IE. Andy Budd sees the point of the versioning switch, but disagrees with the default behaviour.
Fortunately he offers actual arguments:. Clueless developers won't know about this behaviour so every new site they build will automatically be rendered as IE7. Clued-up developers will use this as an excuse to freeze support for IE and turn their attentions to better browsers. Users will see less benefit from upgrading and will be more likely to turn to other browsers. Sam Ruby takes a practical approach to the versioning switch: he has engaged the edge value.
If you trust your coding skills and believe in progressive enhancement, that's exactly what you should do. The fundamental issue is that Safari, Firefox, and Opera will all be harmed by attempting to implement this. I'd love someone to explain this to me. I suspect an underlying philosophical issue, but I'd like to get it into the open, too. What, besides "it's Microsoft so it must be Evil", is the problem? Isofarro disagrees strongly with the versioning switch.
So strongly, in fact that I'm wondering if he isn't overshooting his target. Standards compliant pages must always carry a Microsoft passports that identify the holder as a standards compliant page. Sounds like a ghetto to me. That's what we are being asked to do. We're segregated from the rest of the Web, and forced to carry identity documents that prove we are standards compliant, and earn the dignity to be rendered in a standards compatible way. Just comparing something you disagree with to something most people feel negative about is too easy—especially when the comparison makes no sense at all.
I call this playing for effect, and not serious debate. Zeldman replies to Jeremy and explains that we've got precious little choice. It's either versioning, or no more web standards. Personally I feel that this default behaviour is the whole point of the switch, and besides I wonder whether the situation will become much worse with the versioning switch in place.
It may not become better, but I don't see how it will get worse. David Baron disagrees with the versioning switch, pointing to this mail he wrote back in April. Robert O'Callahan of Mozilla disagrees with the versioning switch, and asks some interesting technical questions. Anne van Kesteren disagrees with the versioning switch.
Note: disagreeing is fine, but assigning ideological blame to people who happen to agree with the plan is not. Chris Wilson talks about the problems the new versioning switch has to solve. Of course, it didn't work that way. Sites optimised for IE6 broke in IE7.
That was a major problem for Microsoft, and it's the reason they've added the versioning switch to IE8. Eric discusses his initial and later reaction to the new IE versioning switch. I agree on the basics: when I first heard of it I wondered if it was such a good idea, but on thinking it over I realised this is probably the best way of handling multiple browser versions now and in the future. Aaron Gustafson unveils the new versioning switch in IE8, and discusses why the doctype switch is broken.
Alex talks about the upcoming IE release, and points out the cause of Microsoft's tight-lippedness is that a word? The easiest and safest way to do that is not making any promises at all.
That's what's happening right now. Alex also wonders about priorities for new browser releases, and he places innovation above standard support; that is, if a browser vendor has a great innovative idea, it shouldn't be forced to go through interminable W3C procedures before being allowed to implement it. One can agree or disagree with Alex's thesis I tend to agree , but the really important point is that the standardisation process has become kind of stuck.
True, W3C has been mending its ways for the past year or so, but it's still going too slow. And we all know what happens when there aren't any standards: browser vendors invent their own.
Nowadays we can at least hope they'll pay attention to each other's efforts, but the essential problem is the same that plagued us during the Browser Wars.
Nonetheless, this situation has advantages as well as disadvantages. The most obvious advantage is a new wave of innovation, and that's always a good idea.
Will W3C and the web standards movement be cast in the role of opposing innovation in the name of the standards? That would be bad. I feel that we're on a crossroad now. Standards support, though still important, isn't the be-all-end-all of everything Web any more. We've basicaly won the standards war—browser vendors now pay attention to us. Nonetheless, winning the war might have brought us a whole new set of problems, problems that are mostly centred on W3C being or having been so slow.
Which road do we choose? Strict adherence to the standards in all respects—which brings along a certain slowness; or a more innovation-driven approach—which may lead to proprietary extensions in the sense that they aren't in the specs; but not necessarily in the sense that they differ from browser to browser.
Well, the news is out: the next version of IE is coming and it's called IE8. Personally, I wonder why they make such a big deal of the name, but the MS marketing department is not to be denied. James Edwards makes the remarkable discovery that IE doesn't support the DOM with complete correctness; even if we forgive it for not implementing part of it. Maintaining a major set of compatibility tables over the past seven has already taught me the same.
James adds a few interesting notes, for instance about a second argument to the getAttribute method, which leads him to conclude that Microsoft hasn't even implemented its proprietary stuff correctly. BTW: except for me, James is just about the single person on earth who's going through the major hassle of creating compatibility tables, so I'm glad he's coming to the same conclusions as I have.
Download Microsoft Edge More info. Contents Exit focus mode. The following rules determine how Internet Explorer selects the document mode: The Developer Tools setting overrides any document mode that's specified by a webpage. The setting remains active for the lifetime of the tab.
In Internet Explorer 9, if the document is hosted in an iframe element, the document mode is determined by the document mode of the top-level webpage. Subdocuments can't be rendered in Internet Explorer 9 mode unless the top-level document is also in Internet Explorer 9 mode. The Compatibility View settings can force a webpage to be displayed in a less-standard document mode.
Group Policy settings override other settings and force all webpages to be displayed in the specified document mode. Most of the sections don't apply to Microsoft Edge unless this is explicitly indicated: 2. For more information about how to configure document modes, see the following articles: Deprecated document modes and Internet Explorer 11 Specifying legacy document modes.
Therefore, we recommend that you start your testing process as follows: If your enterprise primarily uses Internet Explorer 8 or Internet Explorer 7, start testing by using Enterprise mode. If your enterprise primarily uses Internet Explorer 10 or Internet Explorer 9, start testing by using the various document modes. Important Enterprise mode takes precedence over document modes.
Officially, the rules for rendering a webpage are evaluated in the following order by Internet Explorer: Internet Explorer Developer Tools settings — Manually setting the browser mode user agent string in Internet Explorer 11 and Document mode overrides all other settings. Iframe settings for example, iframe specific X-UA-compatible.
0コメント