IE8 will have multiple render modes


Recommended Posts

There's no stance to be taken when you follow the proper standards. I just don't care, I'll follow standards.

Maybe I am not making myself very clear, but I don't think you understood the point.

Not every web page is standards based, and many aren't maintained. If we have all browsers just rendering standards based, then there are plenty that will just stop working properly.

Now, blame that on who you with. I agree that Microsoft are responsible for the situation. But we are where we are, and that is a fact. A pragmatic approach needs to be taken going forward which brings the best balance between not breaking all of these pages, and yet allowing standards based rendering for pages which are built in a standards based way (which most are now). This proposal is meant to tackle exactly that, and not to stunt the use of standards.

If you have a better solution which deals with the many facets of this problem in a pragmatic and sensible way then I am sure that Microsoft and WaSP would love to hear from you...

Link to comment
Share on other sites

Maybe I am not making myself very clear, but I don't think you understood the point.

Not every web page is standards based, and many aren't maintained. If we have all browsers just rendering standards based, then there are plenty that will just stop working properly.

Now, blame that on who you with. I agree that Microsoft are responsible for the situation. But we are where we are, and that is a fact. A pragmatic approach needs to be taken going forward which brings the best balance between not breaking all of these pages, and yet allowing standards based rendering for pages which are built in a standards based way (which most are now). This proposal is meant to tackle exactly that, and not to stunt the use of standards.

If you have a better solution which deals with the many facets of this problem in a pragmatic and sensible way then I am sure that Microsoft and WaSP would love to hear from you...

I totally agree Microsoft are in between a rock and hard place, but eventually they will have to take the tough decision of making IE standards compliant by default. It's not feasible for IE to avoid being standards compliant until every last web page in the world is updated. The reality is pages will have to break if it's ever to happen.

If IE8 just renders like IE7 by default only those of us who care about web standards will bother to use IE8 super standards mode, meanwhile broken pages will still remain broken and bad developers will still be able to making broken websites, further adding to the problem.

In the end if a tough decision isn't made soon it'll just be an even more vicious circle than its already become.

Link to comment
Share on other sites

When AOL had Netscape, they made sure that it could render most of the websites out there (95%+ was what they managed I think), and that was years ago), So there's no way 90% of websites are IE7 (or lower) only.

The problem is with the hacks, properly implemented (using conditional comments that include a version number) won't break anything, improperly implemented (assume that only IE will pass a certain CSS rule incorrectly, and then include the hacks for all browsers) makes stuff break (IE7 fixed a lot of issues with CSS parsing, but didn't greatly expand CSS support, so the hacks broke and they got CSS code they couldn't render)

Basically, MS screwed up (by not fixing their engine earlier, when they could have*), and now it's come back to bite them on the ass.

* Look at the box model bug, it's been in IE for ages but they didn't fix it until IE7 (fully), they could have corrected the behavior and sent out a hotfix, but didn't (look at Firefox, in one release they broke floats with cleared elements, they released an update to fix it, meaning nobody has to worry about the bad behavior)

Link to comment
Share on other sites

When AOL had Netscape, they made sure that it could render most of the websites out there (95%+ was what they managed I think), and that was years ago).

Source?

Link to comment
Share on other sites

Oh boy... I already hated this idea in Netscape, now why, oh why does Microsoft have to copy it and reintroduce it years later?

In theory, each engine should render the same way, so the result should be the same, but the method used to display the result may differ.

It's because IE6 lacked of standards that AOL had to do it in Netscape, because the whole FF engine was way different (way better) and rendered this completely differently, but why does MS... in 2008... have to do this?

Link to comment
Share on other sites

Oh boy... I already hated this idea in Netscape, now why, oh why does Microsoft have to copy it and reintroduce it years later?

In theory, each engine should render the same way, so the result should be the same, but the method used to display the result may differ.

It's because IE6 lacked of standards that AOL had to do it in Netscape, because the whole FF engine was way different (way better) and rendered this completely differently, but why does MS... in 2008... have to do this?

So that it doesnt break existing websites.

Link to comment
Share on other sites

But if existing websites display well in FF and bad in IE, it means that they're standard and not broken.

If they display well in IE but not in FF, chances are that the website IS broken.

So if IE8 complies to the real standards, like FF does, there's no problem, right?

Link to comment
Share on other sites

Yeah, but that's not what they're worried about.

They're worried about sites using hacks for older versions which will still apply to IE8 (Which is what happened with IE7, it could render sites better so IE6 hacks started breaking because sites didn't bother to make sure the hacks only applied to IE6).

So they're worried about breaking badly written (IMO) sites that use standards mode, but which are unmaintained (because I'd fire the designers if they didn't know IE7 was coming)

Link to comment
Share on other sites

So you would rather code sites/web apps (not sure which you build) that don't work on 90% of the browsers out there?

I'm surprised you stay in business at all.

I code both that work on 100% of browsers out there, thanks very much. I code to standards, ensuring that even Lynx works (because I have to do accessibility to the max), verifying at every step and then fixing / hacking for IE versions dating back to 5.01 depending on what the clients has installed (I don't support IE5.2/Mac any more). What I want is a version of IE that doesn't need repeated telling, above and beyond what all the other mode-switching browsers require, to render a standards compliant page that I send it in standards mode. I've never advocated a standards-only-or-be-damned approach to rendering and I don't see why you're lumping me in with all of those who do.

I fully appreciate the need for being able to render the old non-compliant pages. I disagree with making the default rendering mode (regardless of what is sent) a previous version unless I add extra unnecessary cruft to an already compliant page. Defaulting to fallback ensures that non-compliant sites continue to be developed as they will "work" and stagnate the web even more than the Dark Ages of IE6.

A possible good idea was to have some kind of notification that although a page was claiming to be compliant, it wasn't. It wouldn't have to be huge, something like the RSS icon would do in the address bar (the warning icon that Fx HTML validator produces would be just right; a yellow triangle with an exclamation mark). Tooltip would point out site is non-compliant and that if it looks squiffy, that is why. An option to render in an alternative mode could be offered. There could even be optional "report to webmaster" that sends to webmaster@domain. Enough of those and a current site would get the maintenance it needs. If it doesn't, then that is not my problem. Users would get fed up of going to a site that continually reports that it is lying about itself and go to an alternative.

Legacy sites are a different beast as by their very nature, they aren't going to get updated and are simply there as a resource. If you can get the content out of it then who cares how they render? Chances are they will only work in IE < 7 anyway.

Intranets and internal webapps are another different beast. They tend to be coded to a certain version of IE and to hell with any other browser (or version). That is a problem for corporate admins to solve, not something to turn around and inflict on external sites and developers. Just because some BigCo uses IE5.5 on Windows 2000 with legacy NT4 Workstation and won't upgrade internally is their deal.

Link to comment
Share on other sites

I heard that using the HTML 5 doctype may by itself (without any IE 8 junk added) let the site run in "full" standards mode both on IE 8, Firefox, Opera, and whatever have you. So that could be a way out of this mess. The proposed HTML 5 doctype would simply be: <!DOCTYPE html>. See more here: http://ejohn.org/blog/html5-doctype/

So I'll probably switch to that DOCTYPE, although I'm still a bit annoyed that MS is forcing me to do either this or introducing their homebrewn meta tags to let my websites use the standards mode. It's also still a cludge, because my "HTML 5" page might still be an HTML 4.01 page, and just a hack to make IE 8 (and *hopefully* IE 9+!) render it right.

In my misguided mind, I thought using the official W3 doctypes like e.g. XHTML 1.0 or HTML 4.01 would be the end of this mad story. If a site is saying it's using XHTML 1.0 Strict, why the hell should IE 8 assume it's written for IE 7 standards mode?

Edited by Jugalator
Link to comment
Share on other sites

It looks like the HTML5 pages will still need the meta tags (they already activate standards mode in IE, so they wouldn't activate super standards mode in IE8 unless MS decide HTML5 is to be treated differently than other specs)

Link to comment
Share on other sites

It looks like the HTML5 pages will still need the meta tags (they already activate standards mode in IE, so they wouldn't activate super standards mode in IE8 unless MS decide HTML5 is to be treated differently than other specs)

This looks to be a source of these news:

“Steve”: Are there any doctypes that do not require this new meta tag to render with the IE8 rendering engine?

Chris Wilson: @Steve - sure. Any unknown (i.e. not widely deployed) DOCTYPE. HTML5, for example.

http://intertwingly.net/blog/2008/01/23/Su...ing-Quirks-Mode

Although with that wording, I guess it's anyone's guess what Microsoft might do if HTML5 becomes more "widely deployed" in the future. Will they then too tie the web standard to render with a specific IE version's quirks mode? This also of course makes it tough for competing browser vendors in keeping e.g. an XHTML 1.0 page as similar as possible as to how IE 7 would have rendered it to avoid problems, since MS refuse to have those pages render for the latest standards unless the page explicitly tells it to render on IE 8 (or maybe IE 9 or whatever in the future). Gah...

Edited by Jugalator
Link to comment
Share on other sites

I think Microsoft needs to use super-standards mode by default and cut this non-standard bull.

Sevan: Internet Explorer 8 will contain multiple render engines that will render pages in "Super Standards" mode which is new in Internet Explorer 8, standards mode as defined by Internet Explorer 7, or quirks mode as defined by Internet Explorer 6.

Link to comment
Share on other sites

“Steve”: Are there any doctypes that do not require this new meta tag to render with the IE8 rendering engine?

Chris Wilson: @Steve - sure. Any unknown (i.e. not widely deployed) DOCTYPE. HTML5, for example.

That is really dumb. That means that I can send

&lt;!DOCTYPE scoobydoo&gt;

without a HTTP header / <meta /> tag and it will render in IE8 standards mode whereas sending

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;

without a HTTP header / <meta /> tag will render in "downlevel" (IE7) mode.

Link to comment
Share on other sites

What Microsoft dont and never have got is that they caused this problem and its not one easily fixed.

When one builds a website one has to take into account all the different browsers it will be displayed on. Thanks to the differences between IE 5.5 / 6 / 7 this is becoming a nightmare, not to mention Firefox and Safari support. Although Firefox and Safari (with IE 7) tent to follow the rules.

Link to comment
Share on other sites

Ehh, maybe I'm just confused (I'll go with what Chris Wilson says any day over something I read on a site), HTML5 is already treated as standards mode in IE6 and 7, so i assume it would be the same in IE8 (or maybe IE6 and 7 already treat any unknown doctypes as always running in standards mode, but that doesn't explain why it would fall back to quirks mode when it hit XHTML pages with the XML PI, since it couldn't parse the doctype then)

Anyway, unless you really want to, nobody should be using HTML5 at the moment, it's only a working draft at the W3C (heavy implementation at this state is going to lead to the same problems IE had with rendering bugs, people assumed it was supposed to happen)

Link to comment
Share on other sites

That is really dumb. That means that I can send
&lt;!DOCTYPE scoobydoo&gt;

without a HTTP header / <meta /> tag and it will render in IE8 standards mode whereas sending

&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;

without a HTTP header / <meta /> tag will render in "downlevel" (IE7) mode.

LOL +1

Microsoft and standards compliance is all talk and no change. You can see it in everything they do. Usually it's not an attempt at the 3 Es though, just complete ignorance of the demand out there.

Link to comment
Share on other sites

Ehh, maybe I'm just confused (I'll go with what Chris Wilson says any day over something I read on a site), HTML5 is already treated as standards mode in IE6 and 7, so i assume it would be the same in IE8 (or maybe IE6 and 7 already treat any unknown doctypes as always running in standards mode, but that doesn't explain why it would fall back to quirks mode when it hit XHTML pages with the XML PI, since it couldn't parse the doctype then)

Anyway, unless you really want to, nobody should be using HTML5 at the moment, it's only a working draft at the W3C (heavy implementation at this state is going to lead to the same problems IE had with rendering bugs, people assumed it was supposed to happen)

Using HTML5 will be ok if you are willing to adapt as the spec changes.

Link to comment
Share on other sites

If you adapt then there's no problem, but if people start using it and assume rendering bugs are intended we'll have the same problems all over again.

If it renders like IE7 by default novice developers will continue to developer for IE7 rendering, which will only make the problem worse.

Link to comment
Share on other sites

sorry MS but i'm not adding an extra meta tag just to make my pages render in your browser. I'm going to continue serving my pages according to the latest standards, and if IE8 is competent it'll render the pages without hacks.

Link to comment
Share on other sites

sorry MS but i'm not adding an extra meta tag just to make my pages render in your browser. I'm going to continue serving my pages according to the latest standards, and if IE8 is competent it'll render the pages without hacks.

Sorry this isn't about you but the customer and their needs. Bad developer......

Link to comment
Share on other sites

sorry MS but i'm not adding an extra meta tag just to make my pages render in your browser. I'm going to continue serving my pages according to the latest standards, and if IE8 is competent it'll render the pages without hacks.

Well, if everyone transitions to IE8 and you don't transition your page as well, you are left in the dust and not IE8.

Link to comment
Share on other sites

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.