Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

Microsoft Confirms IE8 Has 3 Render Modes

Posted by kdawson on Tue Jan 22, 2008 04:04 PM
from the no-i'm-an-expert-really-i-am dept.
Dak RIT writes "In a blog post this week, Microsoft's IE Platform Architect, Chris Wilson, confirmed that IE8 will use three distinct modes to render web pages. The first two modes will render pages the same as IE7, depending on whether or not a DOCTYPE is provided ('Quirks Mode' and 'Standards Mode'). However, in order to take advantage of the improved standards compliance in IE8, Web developers will have to opt-in by adding an additional meta tag to their web pages. This improved standards mode is the same that was recently reported to pass the Acid 2 test, as was discussed here."
+ -
story

Related Stories

[+] IT: IE 8 Passes Acid2 Test 555 comments
notamicrosoftlover writes to tell us Channel9 is reporting that Internet Explorer 8 has correctly rendered the Acid2 page in "standards mode". "With respect to standards and interoperability, our goal in developing Internet Explorer 8 is to support the right set of standards with excellent implementations and do so without breaking the existing web. This second goal refers to the lessons we learned during IE 7. IE7's CSS improvements made IE more compliant with some standards and less compatible with some sites on the web as they were coded. Many sites and developers have done special work to work well with IE6, mostly as a result of the evolution of the web and standards since 2001 and the level of support in the various versions of IE that pre-date many standards. We have a responsibility to respect the work that sites have already done to work with IE. We must deliver improved standards support and backwards compatibility so that IE8 (1) continues to work with the billions of pages on the web today that already work in IE6 and IE7 and (2) makes the development of the next billion pages, in an interoperable way, much easier. We'll blog more, and learn more, about this during the IE8 beta cycle." There's also a video interview regarding IE8 development on Channel9."
[+] Developers: IE8 May Not Pass the Acid2 Test After All 434 comments
dotne writes "CNET has published an article called Acid2, Acid3 and the power of default. The article predicts that IE8 will not pass the Acid2 test after all: '[Another] scenario could be that Microsoft requires Web pages to change the default settings by flagging that they really, really want to be rendered correctly. Web pages already have a way to say this (called doctype switching, which is supported by all browsers), but Microsoft has all but announced that IE8 will support yet another scheme. If the company decides to implement the new scheme, the Acid2 test — and all the other pages that use doctype switching — will not be rendered correctly.' Microsoft's IE8 render modes have been discussed here previously, and they've caused an uproar in the web development community. According to the scheme, authors must put Microsoft-specific <meta> tags into their pages in order for them to be rendered correctly. I doubt Acid2, nor Acid3 will have Microsoft extensions in them."
[+] IE8 Will Be Standards-Compliant By Default 383 comments
A number of readers wrote in to make sure we know about Microsoft's change of heart regarding IE8. The new version of the dominant browser will render in full standards mode by default. Developers wishing to use quirks mode for IE6- and IE7-compatible rendering will have to opt in explicitly. We've previously discussed IE8's render mode a few times. Perhaps Opera's complaint to the EU or the EU's record antitrust fine had something to do with Redmond's about-face.
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Wait a second? (Score:5, Insightful)

    by jawtheshark (198669) * <slashdot.jawtheshark@com> on Tuesday January 22 2008, @04:06PM (#22143712) Homepage Journal

    I have to add a fucking tag to say I'm compliant? That's insane.... Those that fuck up compliancy should be punished. Heck, no, if I specify XHTML strict, it should render strict. The doctype does say enough. Those who want to adhere to standards just say "strict" and that's it. We do not need an additional tag. The doctype is not broken as he says in the article. You fuckers broke it!

    IE6's rendering behavior was not updated for five years, leading many developers to assume its rendering was both accurate and unlikely to change.

    There you have it... It wasn't rendering accurately... Who's at fault, eh?

    He's simply not realising that adding another tag will have the same effect as the doctype... And in 5 years will have a 4th rendering mode. Great! Long live standards, those that I can choose!

    This is a misguided attempt of someone trying to keep backwards compatibility. The standards are open and published, adhere to them.

    • This is a misguided attempt of someone trying to keep backwards compatibility. The standards are open and published, adhere to them.
      Come meet the new Microsoft. Same as the old Microsoft.

      You really expected true standards compliance? I am SHOCKED! SHOCKED I tell you!
      • Re:Wait a second? (Score:5, Insightful)

        by nmb3000 (741169) <nmb3000@that-google-mail-site.com> on Tuesday January 22 2008, @06:46PM (#22146570) Homepage Journal
        You really expected true standards compliance? I am SHOCKED! SHOCKED I tell you!

        Oh come on. You and the OP should take a second and THINK before running your collective mouths off.

        There is nothing wrong with using a special (standards compliant) tag to tell the browser to render differently than normal. In addition to preventing tens of thousands of websites from breaking, there are plenty of CDs and other media containing websites written over the last 10 years. Should all these become unusable just because Microsoft updated their browser? Is adding one tag really that much trouble for you?

        I know it's fashionable on Slashdot to say things like "NOT STANDARDS COMPLIANT!?! HOW DARE THEY!!1" (and then get modded up for it!), however the real world requires more tact than that. Coming up with a solution like this that unifies the three Trident rendering modes (quirks, IE6, standard) is pretty elegant. It keeps real old sites from breaking. It keeps sites made in the last 7 years from breaking. Above all, it gives web authors the ability to fine-tune the way their page renders without a bunch of hacks.

        Is it ideal? Obviously not, but unless you've got a time machine and can fix the problem, please shut up. Bitching about the past doesn't do anything except give people headaches. It's worth wondering if Microsoft's dedication to backwards-compatibility has anything to do with their success. It's popular around here to say "get with the times" but in the business world, that means money. The supposed "bit rot" is an artificial and man-made result of ignoring this fact.
          • Re:Wait a second? (Score:5, Insightful)

            by Ash Vince (602485) on Tuesday January 22 2008, @08:06PM (#22147520) Journal

            You shouldn't have to add a tag just to get the browser to work correct in the first place.
            Maybe in your strange web utopia, but here in there real world I have spent the last 5 year developing websites for people who only gave a shit about IE and sometimes gave me a deadline of the day before I started the project (the work I started today was due on Friday). I can honestly say that a large proportion of the work I have done will not render in my chosen browser (mozilla under linux).

            I am not proud of this but with tight deadlines cross browser standards compliance is the first thing to slip if you know you are developing a corporate intranet and all the client has deployed is IE6. Anyone who insists on developing for other browers in this situation is just wasting time and hence money.

            I do not develop complicated dynamic websites as a religion or hobby, I do it as a job so tailor each project to the clients needs, not my own.
        • Um, you've managed to compare Microsoft to slaveowners. While not *completely* out of the realm of imagination, for many of the "enslaved" their condition is actually completely voluntary. There are alternatives; my wife saw Ubuntu, fell in love with it, and refuses to use Windows now. Which is great, because I was able to free up that hard drive space. And she knows virtually nothing about how computers work.

          As for this quote:

          That was the reason for slavery, too; just rich people wanting to feel that they are superior.
          Which grade are you in, third or fourth? The awful fact that people could profit from ownership of another human being, much as one might profit from a sled dog, was the reason for slavery, for just about as long as mankind has existed. Was it a horrible institution? Sure. Did the average slaveholder base his practice of slave ownership on some warm fuzzy feeling of "I'm so awesome?" Well, no. Landowners increased their wealth by owning slaves who increased the profits of their business endeavors, not the other way around. By the way, the majority of American slaveholders in the South weren't all that well off by comparison. Why don't you spend a little less time on the heartfelt backyard historical psychoanalysis and a little more working to educate yourself properly?

    • Re:Wait a second? (Score:5, Insightful)

      by spyowl (838397) on Tuesday January 22 2008, @04:30PM (#22144264)
      Exactly. Microsoft picks and chooses how they treat standards, and that hasn't changed with upcoming IE8. Consider the quote below from the MSDN blog:

      In short, there was an expectation that even under standards mode, IE would keep working the same way. Because sites expected IE6 behavior, the DOCTYPE switch failed to protect compatibility in the real world when we changed behavior under standards mode to become more compliant.

      So, it isn't DOCTYPE switch that failed, but it was Microsoft that failed to implement the standards and set the proper expectations with their developers and their customers; and then faked the standards mode for their own benefit to be backward compatible to the broken rendering mode they had before. Nice twist to the truth though - would have probably made it through some junior VB script kiddies if it was more sugar coded.
        • Re:Wait a second? (Score:5, Insightful)

          by cp.tar (871488) <cp.tar.bz2@gmail.com> on Tuesday January 22 2008, @05:06PM (#22144966) Journal


          So, it isn't DOCTYPE switch that failed, but it was Microsoft that failed to implement the standards


          Boy would I hate to be the one to break that awfully shocking news to them. Don't suppose they will survive that one, you think?

          Anyway. Get over it. Detect your browser version and render your custom CSS. Play like everyone else plays.

          Or leave it broken for the people without a proper browser.

          If it's strict, it's strict. If your browser cannot render strict properly, go and bitch to the manufacturer.

          • Re:Wait a second? (Score:5, Insightful)

            by Sancho (17056) on Tuesday January 22 2008, @05:33PM (#22145436) Homepage
            Obviously, and this is the manufacturer's solution.

            I don't really know what people want from Microsoft now. They screwed up--it's obvious. They know it, we know it, web developers know it. Nevertheless, web developers have had to work around incompatibilities for years. What do you want, for Microsoft to change the rendering engine out from under people? Thousands of websites to stop working in that browser (the one that most people use) until the developers can fix the site? It's a bad situation, and it's Microsoft's fault to begin with, but what solution would you propose that wouldn't inconvenience a lot of end users (both developers and their customers, alike)?
            • Re:Wait a second? (Score:5, Insightful)

              by SanityInAnarchy (655584) <ninja@slaphack.com> on Tuesday January 22 2008, @06:13PM (#22146072) Journal

              What do you want, for Microsoft to change the rendering engine out from under people?

              Yes. To anyone this affects: Your website was broken in the first place. It is partly MS' fault that it was broken, but mostly yours, for not trying it out with other browsers.

              Thousands of websites to stop working in that browser (the one that most people use) until the developers can fix the site?

              Yes. Let them add hacks like <use-fucked-up-block-model>. Don't make the standards compliant people have to add <dont-fuck-up-my-box-model/>.

              (Yes, I realize it's an HTTP header. You think that makes it better? I mean, yeah, great -- now "save as" on webpages will break them, unless they're using <http-equiv>. And yes, it's got a browser version number in there!)

              It's a bad situation, and it's Microsoft's fault to begin with, but what solution would you propose that wouldn't inconvenience a lot of end users (both developers and their customers, alike)?

              I wouldn't. I'd much rather have a little short-term inconvenience, if it means that in the long term, we can forget about all this. Maybe even forgive.

              But no, we got the opposite -- something that works in the short term, but will come back to haunt us in the long term. I'm really not looking forward to the <no-really-I-mean-it-standards-compliant-this-time> tag with IE9 in another few years. Nor am I looking forward to IE15 unintentionally introducing a bug in the IE6 compatibility, breaking some decade-old site out of the blue -- I'd much rather it be broken now, when there's a greater chance someone's actually paying attention enough to fix it.

              • by weston (16146) <westonsd&canncentral,org> on Tuesday January 22 2008, @07:55PM (#22147400) Homepage
                Yes. Let them add hacks like . Don't make the standards compliant people have to add .

                The box model is actually one of the few cases where Microsoft did it right in the first place, and the w3c did it wrong. Conceiving padding as something that's not internal to a given block is highly non-intuitive and annoying, it actually makes certain things impossible. Want precisely proportional columns, but fixed-width padding? You could do it with a sane box model with no additional markup, but with the w3model, you'll need another div.

                I say this as someone who has a burning hatred for the IE product management team -- I'm normally a bleeding-heart compassionate type, but for the thousands of hours of my life they've stolen from not only me but every web developer in the world who has to work around the intentional weaknesses in their product, I'd happily smile as they were methodically flayed in a lemon juice bath between bouts of being shat upon by elephants. But they might deserve an ever so small moment of reprieve from their prolonged suffering for intelligently bucking the weak w3 choice.

            • Re:Wait a second? (Score:5, Insightful)

              by JackHoffman (1033824) on Tuesday January 22 2008, @06:37PM (#22146442)
              First, instead of pretending that this is a doctype problem, own up the mistake and explain that IE6 created the problem which needs to be fixed.

              The only actual problem is that many IE6-only pages exist which declare a wrong doctype. A solution to that does not need to be extended into a mechanism which makes it a standard compliant behaviour to design to specific browsers and browser versions. The proposed solution puts Microsoft in the position where they can continue to disregard standards, because as long as the document declares for which browser it is written, every other browser has to cope, should this become a standard.

              In conclusion, Microsoft could either provide a new browser which faces the same problems as every other browser, i.e. not being recognized as IE and therefore being excluded from certain pages and web applications, alongside a compatibility browser which emulates IE6 for those legacy applications. Or Microsoft could simply push for a new version of HTML, complete with a new doctype, which a new browser version would then render accurately while treating older doctypes like IE7 or IE6 does today. The only thing they really need is a way of saying "this is a new page, no quirks mode, for real" and a new HTML doctype would do that just fine.

              What they propose is the same compatibility scheme which has failed miserably in Word: Each version of Word creates its own "standard" of the DOC file format and every successive version has to render all versions of that format. Even Microsoft, despite having the code to the older Word versions, doesn't get that right. Competitors don't even stand a chance because there is no specification and no code to look at. Do you really want that for the web? That kind of mess is exactly why standards and accompanying standards replaced the proprietary Netscape vs. Microsoft tag soup.
            • Re:Wait a second? (Score:5, Interesting)

              by totally bogus dude (1040246) on Tuesday January 22 2008, @06:51PM (#22146628)

              Well, the "problem" they're trying to solve is that IE isn't standards compliant. It was never standards compliant, so why is it suddenly a problem that needs solving? Simply, because everything else (more or less) is compliant, and they realise that IE will become increasingly irrelevant if it refuses to play nicely with the rest of the world.

              So the answer as to what else could they do is simple: they could drop IE! Rename the new version to "Windows Intranet Application Host" since that's about all it's good for anyway. There's enough other browsers already, and it's likely more would be created to fill the void left by MSIE. We now have reasonably well defined standards and several implementations of interoperable browsers; we simply don't need IE8.

              People could still use IE 6 or 7 for legacy web sites and internal applications until they're no longer needed, at which point they'd just die off gracefully.

              Okay, maybe it's not realistic, but it would be nicer than forcing the entire internet community to endure yet another round of Microsoft's ineptitude.

            • Re:Wait a second? (Score:5, Insightful)

              by cp.tar (871488) <cp.tar.bz2@gmail.com> on Tuesday January 22 2008, @05:46PM (#22145666) Journal

              That's absolutely asinine. Just because Microsoft screwed up by not making their browser standards compliant, doesn't mean you should punish a majority of the users of it's browser. A lot of people haven't even heard of other browsers that are better, so why should they be punished?

              No. They should be educated.
              Inform them they are using a non-compliant browser and send them to download Firefox.

              And if they insist on using a deficient product, it is not my problem.

              Meh, it's your loss. When you have fewer customers because only a certain percentage of them can view your website, you'll realize that your OMGWTFBLAMEEVERYONE attitude was truly the one at fault, not MS.

              I am an educator.

              Every user I educate is a win for me.
              And for everybody else, in the end.

    • by Tumbleweed (3706) * on Tuesday January 22 2008, @04:47PM (#22144568) Homepage
      Hey, don't forget that when IE8 comes out, it'll only be 'mostly' compliant, so when IE9 comes out, we'll have to add another tag that says 'really-REALLY complaint, this time we really mean it' meta tag.

      So can super high-traffic sites measure the amount of bandwidth they have to pay to use to send out this unnecessary tag to millions of people and bill MS for it? Oh, I forgot, their EULA says they're not responsible for their products. :)
    • Re:Wait a second? (Score:5, Informative)

      by DougWebb (178910) on Tuesday January 22 2008, @05:03PM (#22144894) Homepage

      I have to add a fucking tag to say I'm compliant?

      No, actually you'll be adding a tag that says "This page displays properly on IE7, Firefox 2, and some other browsers I tested it with" and it'll be up to the browser to figure out how to be compliant with you. In IE's case, IE8 will see that and say "I'd better render this page like IE7 does, because it probably has IE-specific workarounds that'll render incorrectly in IE8's really-standard-compliant rendering."

      When you're good and ready, and you see enough IE8 hits in your access log to make it worthwhile, you can get IE8, test your pages, and if they look good, you can update the tag. It'll be under your control when users start to see the new rendering engine in IE8; you won't have to worry about when your users decide to upgrade themselves.

      This approach has some great benefits; the IE team actually can safely break compatibility with IE6 and IE7 specific websites and implement standards correctly, because those websites will continue to be rendered with the existing renderer until they explicitly say it's safe to render with IE8's renderer. If they do this well, all we web developers will need to do is remove any IE-specific workarounds if the browser is not IE6/7... IE8 will be treated like any other standards-compliant browser, with no special coding or styling.

      Another great benefit for us developers is that we'll be able to change the new tag to get an IE7 rendering from IE8... no more virtual machines just to have different versions of IE on the system. (Except for IE6, but Microsoft is supposedly going to try to force most IE6 users to IE7 next month.)

      I can't tell you how much time I've wasted over the past few years trying to get standards compliant pages to look right in IE6 and IE7. I'll be very happy to be able to have my Apache server insert a response header that says "This page is for IE7; deal with it" and not have to worry that my application is going to break when people start to upgrade to IE8 in-between my releases.

      • Re:Wait a second? (Score:5, Insightful)

        by JackHoffman (1033824) on Tuesday January 22 2008, @05:44PM (#22145632)
        Another great benefit for us developers is that we'll be able to change the new tag to get an IE7 rendering from IE8

        Seriously, you're new to this, aren't you? Not only will you have to test your page with browsers running in virtual machines, over the course of time you'll have to test it in IE8 pretending to be IE7, IE8 pretending to be IE6, IE9 pretending to be IE8, IE9 pretending to be IE7, and so on as you change the tag to benefit from newer rendering modes. All those render modes will either use combined code, which means they won't render exactly as the old versions, or they are essentially multiple browsers in one, which means they'll each have their own security vulnerabilities and plugin incompatibilities.

        This page is for IE7; deal with it

        Added benefit for Microsoft: They get to write their own standards again. If another browser sees that made-for-IE7 tag, it must recreate all of IE7's quirks (and those of IE6 and IE8 and IE9...), i.e. behave like some closed source software from Microsoft. MS DOC deja vu...

        I really hope that the other browser developers show MS the finger on this one, because if you thought browsers are memory hogs and security nightmares now, wait until every browser has to implement all its predecessors' quirks and all its predecessors' competitions' quirks.
      • Then opt-out. (Score:5, Insightful)

        by SanityInAnarchy (655584) <ninja@slaphack.com> on Tuesday January 22 2008, @05:07PM (#22144980) Journal
        First, if you're a webmaster who only designed for IE6, shame on you. If you designed for other browsers, which were mostly standards compliant, you should be able to just swap in one of those for IE8, with minimal tweaking. (Or maybe IE8 isn't that compliant, hmm?)

        But more importantly, they are adding a non-standard tag to indicate standards-compliance, which is just fucked up. How about you use a non-standard tag to indicate non-standards-compliance -- to indicate that you want the old way of doing things? How about you just drop your DOCTYPE?

        If you don't maintain your website enough to even be able to do that, I don't see how that's Microsoft's fault. And it really pisses me off that Microsoft has the audacity to demand that the rest of the world code specifically for IE. You had to do that before, anyway, but this is the first time they've publicly admitted it. Can we have our antitrust suit back, please?
      • Re:Wait a second? (Score:5, Insightful)

        by SanityInAnarchy (655584) <ninja@slaphack.com> on Tuesday January 22 2008, @05:14PM (#22145118) Journal

        IE is like most software not bugfree,

        And that is not an excuse.

        Firefox is not bugfree -- it leaks like a sieve (or "fragments"), chewing up half your RAM. Konqueror is not bugfree -- it crashes maybe every day or two for me. I'm sure Safari and Opera each have their own bugs.

        But I can relatively easily make a website -- even a web app -- which works the same way in Firefox, Konqueror, Safari, Opera, and so on. This is the first 90% of the project. The other 90% is making it work on IE.

        it's unrealistic to expect every webpage around the world to get checked and fixed every time they fix a bug, and it's equally unrealistic to expect every page to follow the standard if there's a good chance it can be made to look right in IE.

        Why is it unrealistic to ask people to follow the standard, and to let IE be buggy? Why should we be working around Microsoft's bugs for them?

        Honestly, they should have simply made a compatibility tag from the start which basicly means "render like IE4/5/6/7/8/latest, DON'T apply any later bugfixes because we've worked around them".

        Perhaps, but has it occurred to you that this is exactly what DOCTYPEs are for? So that when XHTML 6.0 comes out, browsers will still be able to deal with XHTML 5?

          • Re:Wait a second? (Score:5, Insightful)

            by beav007 (746004) on Tuesday January 22 2008, @06:30PM (#22146342) Journal
            Because in the web design world, that's not how it works. You spend 90% of your time making the website. It then takes another 90% to make it render properly in IE without breaking it in more standards compliant browsers, thus causing you take 80% more time to create the site than it should have.

            It's just like any other project in the software world. The first 90% of the project takes 90% of the time, and the last 10% of the project takes 90% of the time.
  • Just Like Before (Score:4, Insightful)

    by excelblue (739986) on Tuesday January 22 2008, @04:07PM (#22143730) Homepage
    Hence again, MS is imposing its powers of monopoly by forcing us to work around their nonstandard quirks, forcing us to add their own meta tag. Nothing much new here - this is still part of embrace, enhance, extinguish.
    • by dedazo (737510) on Tuesday January 22 2008, @04:15PM (#22143964) Journal
      Do you want to add a single tag that all other browsers will ignore, or do you want to spend all your time hacking workarounds? I ask because Microsoft is not about to drop compatibility with billions of pages that unfortunately rely on IE6-specific shortcomings and rendering quirks. So you can accept that IE is not going anywhere soon and that this is the only realistic way to handle this problem (admittedly created by Microsoft themselves), or you can go back to the previous crap situation.

      The comments on the blog to the tone of "break the web" are amusing. I'd like to see the face of a CIO when his architect tells him that the corporate-wide upgrade to IE8 broke half the apps on the intranet because, you know, some technorati bloggers with snazzy-looking web sites signed the W3C suicide pact and wanted everyone to do the same.

      Or, use Firefox and convince everyone to do as well. That's what I've been doing lately. Maybe IE8 will pull me back, but IE7 sure has heck didn't.

      • by SanityInAnarchy (655584) <ninja@slaphack.com> on Tuesday January 22 2008, @05:25PM (#22145306) Journal

        Do you want to add a single tag that all other browsers will ignore, or do you want to spend all your time hacking workarounds?

        How about option 3: Code to the standards, and ignore specific browsers. Obviously, you want to test it in other browsers to expose flaws in your own code/assumptions, but if a browser doesn't work due to actually being non-standard, I want that to be Not My Problem.

        I've spent enough of my life hacking workarounds around Microsoft crap. How about they work around the standard for a change?

        I ask because Microsoft is not about to drop compatibility with billions of pages that unfortunately rely on IE6-specific shortcomings and rendering quirks.

        They already did, to some extent, with IE7.

        Keep in mind, these billions of pages were already broken. They should not have been compatible with anything. Microsoft dropping compatibility for them would actually be a healthy thing, compared with, say, some of the things they broke with Vista.

        I'd like to see the face of a CIO when his architect tells him that the corporate-wide upgrade to IE8 broke half the apps on the intranet because, you know,

        Because, you know, he was a moron who didn't test those apps on IE8 before rolling it out. Didn't know about WSUS, you know. Can I have his job when he's fired for incompetence?

        Again: Same thing happened with IE7. Same kind of complaints, same intranets keeping everyone on IE6 for awhile.

        The only reason you mention this is the same reason it's not a problem: On intranets, apps tend to be more tied to a single browser, because you can mandate that browser. Because the alternative was even worse -- mandating the install of some custom client-side app, maybe some Visual Basic + Access crap. This same freedom that lets intranet sites be lazy with respect to the standards also allows them to delay IE8 as long as they want -- or, yeah, use Firefox.

          • by Bert64 (520050) <bert@@@slashdot...firenzee...com> on Tuesday January 22 2008, @04:48PM (#22144586) Homepage
            Only people simply won't bother, they will just write the same crappy nonstandard HTML they have for IE6 because it still works.
          • by JackHoffman (1033824) on Tuesday January 22 2008, @04:55PM (#22144738)
            The header is touted as a replacement or augmentation of the doctype definition, which is supposedly broken. Well, it's not. IE can't handle doctypes properly because too many pages were designed-for-IE6 with wrong doctypes and leave newer versions no viable path to standard compliance without being treated like other standards compliant browsers (i.e. identifying as something other than IE.)

            So, in order to have their cake and eat it too, Microsoft wants IE to be backwards-compatible to IE6 and more modern at the same time. The only way to do that is to make everybody add a redundant tag, and they trashtalk doctype to get their will. But doctype says to which standard a document was written. Microsoft on the other hand wants developers to keep writing pages to browser versions, which is what got us into this mess in the first place.

            The correct way to solve this is to make new IE versions identify as something new, like MSWB, and provide an IE6 compatible control for applications which request MSIE. And tell developers to write to standards, not browsers, and test with more than one browser!
    • by JonTurner (178845) on Tuesday January 22 2008, @04:19PM (#22144034) Journal
      Now's as good a time as any to check for browser type. If IE, redirect to the "You are using an non-standard browser" page with a link to GetFirefox.com
    • by JackHoffman (1033824) on Tuesday January 22 2008, @04:21PM (#22144074)
      It's brilliant: The reason is that there are too many websites out there which work in IE6, but fail miserably in standards compliant browsers. These websites will of course not get that tag. For the the tag to make any sense at all, newer IE browsers must therefore assume that an untagged site expects IE6, so the page will be shown as if the browser were the steaming pile of crap IE6. It's another quirks mode just for IE6, and the only way to escape it is to add a redundant tag.
  • by zappepcs (820751) on Tuesday January 22 2008, @04:07PM (#22143750) Journal
    So, to get IE8 to behave nice, web developers are responsible? huh?
  • by kharchenko (303729) on Tuesday January 22 2008, @04:08PM (#22143770)
    to be standards compliant, web pages have to incorporate a non-standard tag?
  • Makes Sense (Score:4, Insightful)

    by DigitalisAkujin (846133) on Tuesday January 22 2008, @04:08PM (#22143776) Homepage
    This move makes sense but I wish they would stop making up random tricks like that whenever they damn well please. HTML 5 has a way to set render modes while being compliant.

    At least their decision isn't going to mess with any other browsers.
  • OOXMLish (Score:5, Insightful)

    by bigdavex (155746) on Tuesday January 22 2008, @04:13PM (#22143892)
    sigh.

    <render-like-IE6>
  • by Nemilar (173603) on Tuesday January 22 2008, @04:16PM (#22143970) Homepage
    I've been developing web pages for more years than I can count, and I (like everyone else in the field) know the annoyances of Internet Explorer. Everything from their faulty implementation of the box model [wikipedia.org] to their poor handling of Javascript has done an unimaginable amount of good for the stock prices of the asprin (and beer) industry.

    That being said, IE has come a long was since the days of version 6 (those that came before version 6 are unmentionable), and some credit has to be given to Microsoft for finally trying to do something about their browser. Seeing as how it is the de-facto standard, it's good that they're putting at least some effort into making it better.

    I love Firefox, and I love that Mozilla is the reason why Microsoft is being forced to update their browser (competition is everything), but we're going to be stuck with Internet Explorer for the foreseeable future, and progress can only be a good thing.
  • by pergamon (4359) on Tuesday January 22 2008, @04:20PM (#22144054) Homepage
    <meta http-equiv="X-UA-ActMoreLike" content="FireFox" />
  • by Len (89493) on Tuesday January 22 2008, @04:22PM (#22144084)
    There's some kinda BS somewhere...

    However, in order to take advantage of the improved standards compliance in IE8, Web developers will have to opt-in by adding an additional meta tag to their web pages. This improved standards mode is the same that was recently reported to pass the Acid 2 test, as was discussed here.

    So how could IE8 possibly have passed the Acid2 test? The test page doesn't contain the magic META tag that IE needs to pass the test!

  • by sentientbrendan (316150) on Tuesday January 22 2008, @04:23PM (#22144114)
    Since this new tag lets them safely break compatibility with the old IE, are they going to fix longstanding javascript issues like moving to the standard event model?

    It would be nice to be able to write javascript without a bunch of compatibility hacks; however, the IE team hasn't shown much interest in javascript compatibility in the past and instead has focussed on CSS compatibility. CSS is also an important area, but it alone won't allow for hack free coding.

    As it stands there's a lot of incentive to move to a different platform, such as flash or silverlight.
  • as long as they don't touch my <blink> tag, they can do whatever they want

    <blink>i heart you</blink> blink tag, no one loves you like i do
  • In summary (Score:5, Funny)

    by red_dragon (1761) on Tuesday January 22 2008, @04:29PM (#22144230) Homepage

    I like to think of the different modes as:

    1. Unpolished turd.
    2. Brushed turd.
    3. Sanded and polished turd with a bit of air freshener and shaped to look like a Hershey bar.
  • by Chris_Jefferson (581445) on Tuesday January 22 2008, @04:30PM (#22144244) Homepage
    Microsoft really had 4 options:

    1) Don't try to support standards properly.
    2) Obey the DOCTYPE, even though many programs and people put it on old pages which aren't going to render properly in a standards-compliant browser
    3) Add a new flag that means "Yes, I promise I know about standards".

    For years, they have been doing (1). It would be nice if they did (2), and just broke all the badly written IE 6 pages with an improper DOCTYPE. But they aren't going to do that, their users don't want them to do that, and to be honest I don't either. That leaves them with adding a new flag which lets people admit they know about standards.

    In their favour, they are:
    1) Designing the option in such a way other browsers can be extended by it
    2) You can pass it as a HTML header, so if you want just add it to your apache config, and all pages on your website will be rendered in IE8 cleanly (this is the option I intend to take).

    Yes, this isn't perfect and it is evil Microsoft, but it's bettered than I'd hoped for. I'm looking forward to popping the option into my apache config and seeing if IE8 really is standards compliant.
  • by MadMidnightBomber (894759) on Tuesday January 22 2008, @04:42PM (#22144456)
    <META fuckupmyhtml="off">
  • by roca (43122) on Tuesday January 22 2008, @04:55PM (#22144744) Homepage
    I've blogged about why I don't think we'll follow this path in Firefox.

    http://weblogs.mozillazine.org/roc/archives/2008/01/post_2.html [mozillazine.org]
    http://weblogs.mozillazine.org/roc/archives/2008/01/slipping_the_ba.html [mozillazine.org]

    One interesting thing is that as far as I can tell, this will become a crushing burden on IE development.
  • by Saberwind (50430) on Tuesday January 22 2008, @05:12PM (#22145090)
    Tweak your pagerank algorithm so it improves the position of pages that are xhtml-strict, (or at least well-formed and don't use nonstandard tags), and publicize the fact. That will provide an incentive for people to start making their pages standards-compliant. Currently there is very little incentive to standardize.
  • "Invalid HTML" icon (Score:5, Interesting)

    by Ichijo (607641) on Tuesday January 22 2008, @05:40PM (#22145554) Homepage Journal

    Browser makers could do a lot of good for standards compliance if they would warn the user (unobnoxiously, of course) when he/she is visiting a web page containing invalid HTML code. You wouldn't purchase from a web site that doesn't cause the little lock icon to show up on your browser, so would you also think twice if you knew the company didn't care enough to produce standards-compliant HTML code?

    Since the web browser is used as a development tool, it should alert the developer of any syntax errors instead of attempting to silently recover from them.

    • by nick.ian.k (987094) on Tuesday January 22 2008, @04:39PM (#22144422)

      Seriously, where is the benefit to the web devs to turn on this mode?

      Gosh, I don't know, being able to save a fuckton of time and effort by writing code to a known and openly-documented standard *and* being able to have things work fairly reliably almost everywhere without having to poke blindly at shit until it works? :P

      This always seems to come up, and I'm bewildered by the fact that it does. Here, once again, is the core issue: IE as it stands right now doesn't suck to write code for just because it doesn't follow a particular set of standards, it sucks because there *isn't* a reliable set of standards to use when coding for it. Writing markup etc. for IE isn't a methodical process, but a series of guess-and-test maneuvers and a lot of F5. There's a degree of this to be expected in generating complicated layouts, but it should be towards the end of the process; doing things for IE, this starts way early in the process. It's a time sink. It's akin to, say, getting a kit for building a shed but there not being any instructions -sure you know what a shed looks like, and the pieces themselves -screws, planks of wood, etc. are known to vaguely work in such-and-such a way, and you put it together mostly on trial-and-error, and as long as it stands up and looks approximately correct, it's done. It's stupid, inefficient, and frustrating.

    • by misleb (129952) on Tuesday January 22 2008, @05:20PM (#22145244)
      Actually, it is a lot easier to develop a site in strict/picky mode because a simple HTML/CSS validation will often tell you what is wrong. Where you might spend hours debugging something manually when using a "quirks" mode. Quirks mode is for lazy developers who think that they save time by not closing their P tags.

      It is like developing Perl or C with full warnings turned on. It can be a pain to satisfy every pedantic complaint of the parser, but eventually you learn to do it right the first time and you might even find that the warnings indicate a much more serious error in the program logic.

      -matthew
      • by Pulzar (81031) on Tuesday January 22 2008, @04:41PM (#22144436)
        That would make a hell of a lot of pages render poorly by default -- some of them long abandoned, yet still providing useful information. This seems like a good compromise that doesn't break any existing pages... yet it still encourages standards-compliance, because with this tag, you can write once for both IE8 and Firefox and have it work in both.

        Stan