IE8 Expectations

Microsoft recently announced that the latest dev builds of Internet Explorer 8 pass the Acid2 test. The Acid 2 test is designed to test various scenarios of CSS compliance. What is significant about this is seeing a level of support that possibly matches or exceeds other browsers.

Exceeds? Okay, it's hard to look at one little test and think that IE is going to surpass all the browsers. And in many ways, it won't. First, let's look at what we do know about the next version.

What we know

Trident, the rendering engine that's been with Microsoft since IE4 will still be there for IE8. However, the engine apparently consists of a few different parts, one of which is the layout engine. The layout engine has been rewritten. That should mean no more hasLayout.

Confirmed by Microsoft as a result of the Acid2 test is the support for the table display types which can allow for straightforward column layouts (although I'd argue you lose the ability to control source order in this case, if that's important).

We also get support for data URLs. This can be handy for embedding image data in the HTML or in the CSS document directly, instead of needing to reference an external file.

There's also support for generated content (using :before and :after, for example). The ABBR tag has been fixed (it'll show the dotted underline and allow title attributes to be set). Object element fallback will also be available. We should also be able to assume proper support for inherit, as well.

Predictions

The Good

With the new layout engine, this may give them the opportunity to jump the gun on some future specifications such as grid positioning.

We should see improved DOM support including proper support for event listeners. Much of what will be seen will likely be high priority bug fixes. What IE7 did to narrow the gap on CSS support, IE8 will probably do to narrow the JavaScript/DOM gap. We'll see things that make our lives easier for cross-browser consistency.

The Bad

I don't think XHTML support will be in there. I personally don't think that's a bad thing but I know there's plenty of people clamouring for it. Don't expect SVG or Canvas support either.

On the DOM side, I'd love to see mutable DOM prototypes (like HTMLElement) but I suspect this is more of a core issue that would've required some serious rewriting. I predict it won't be in there.

The IE8 Standards Mode

Microsoft has said that there will be an IE8 standards mode. This is different than the standards mode that's in IE6 and 7, which is triggered simply by using a DOCTYPE. This will be some other opt-in mechanism. It will not be the end users responsibility to flip this switch on (as many people in the comments of the IE blog seem to think). This will be up to the web developer coding the page to specify that the page will use the new standards mode.

In all likelihood, this'll be a custom bit of HTML, such as a meta element that declares the page (and subsequent CSS and JScript) to use the newer features.

Microsoft has been stressing this repeatedly in saying that end users have an expectation that a web site will work the same from one version of a browser to the next. If the site breaks, they blame the browser. I can respect that.

The part that scares people is the thought of including proprietary markup every time another browser version is released.

When can we expect it?

They'll be showing stuff off at MIX which is still over two months away. Whether that will mean a beta or just a demo remains to be seen. I'd honestly hope it'd be the first beta release with another beta by mid to late summer. That'd mean a new IE8 could be in the hands of consumers before Christmas 2008.

Hopefully by then, we'll be close to forgetting about IE6.

Published December 20, 2007
Categorized as Browsers
Short URL: http://snook.ca/s/860

Conversation

29 Comments · RSS feed
Chris Vincent said on December 20, 2007

     Hopefully by then, we'll be close to forgetting about IE6.

What a wonderful ending statement that is...

Ian said on December 20, 2007

I don't think XHTML support will be in there.

Why do you say that? I mean, how do you know?

Jonathan Snook said on December 20, 2007

@Ian: I don't know for sure but my thoughts are rooted in a blog post by Chris Wilson. While XHTML support wasn't in the cards for IE7, I'm still not sure it should be a priority for IE8. I know I'd rather see a lot more effort poured into DOM support than XHTML support.

Robert Nyman said on December 21, 2007

Thanks for a balanced post on this. Most people think that just because they made Acid2, everything is fantastic and there's nothing more to add...

From the JavaScript perspective, they have to add proper event handling and XPath support to even stand a chance to match what's in other web browsers.

And even though I do think it's great that they're improving, imagine that your depicted scenario is true: next Christmas, a year from now, we might see IE 8. Imagine where all the other web browser vendors will be by then. IE 8 has to be the best web browser in the market by then, or they will constantly be at least one year behind everyone else.

pete b said on December 21, 2007

Very interesting. It will be good to be rid of 'hasLayout', but I don't undersatnd why it's going to need something extra to trigger standards mode - doctype already does that.

Crockford recently said that we'll probably be supporting ie6 for another 5 years. It comes down to percentages - how many users are you willing to drop support for? 10%? 5%? Because a year after ie7, adoption rates are flatlining - let's hope lots of people get new computers this christmas!

Damjan Mozetič said on December 21, 2007

Why would they want to continue with the traditional standards / quirks mode combo? Just... Why?
Like pete b said, I don't understand the need for extra syntax just to let the browser play along with standards. If they have to do it, let there be extra syntax to trigger quirks mode... although that's kind of silly, right?

Alan Gresley said on December 21, 2007

@ pete b

Indeed the new layout engine in IE8 will abandon hasLayout as has been announced by Markus Mielke

http://lists.w3.org/Archives/Public/www-style/2007Dec/0151.html

So that is why there will be new "Standards mode" in IE8 along with the legacy modes of "almost Standards mode" currently "standards mode" in IE7 and "Quirks mode." This means that IE8 will have three modes. This is why there is a bit of debate on CSS3 WG public mailing list about how this new "Standards mode" will be triggered. I have already made a suggestion about how this could be triggered in IE8 on the CSS3 WG public mailing list which may require users input by selecting buttons in the toolbar. One for standards and one for legacy. An author could also stipulate possibly in in CSS comment this new "standards mode" only. I don't see any other options at this point in time and no other suggestions have been put forward. I don't think that poluting the html any further or having any new docytype is the best way to approach this.

I know Jonathan has said that this is not really a good solution, but the IE team doesn't have much alternative. The IE team has asked CSS3 WG public mailing list members for help in working out how this can be archived.

@Damjan Mozetič

They need the traditional standards / quirks mode combo for backwards compatibility. An author may not has known what they were doing so there pages would typically be in "Quirks mode." Authors that knew what they were doing but use strange workaround for IE would want "almost Standards mode" Then those in the know would want the new "Standards mode"

This is indeed is the early begining on the new open web.

Dan said on December 21, 2007

I think it's sad that web designers/developers have come to acceptance of "There's always next time..." when it comes to IE. We all got excited when IE7 came out because it handled XHTML and CSS so much better than IE6, but we all soon realized that it still has a bunch of problems... and here we are again. I just hope IE gets it right once and for all with 8.

Rob said on December 21, 2007

Dan,
IE does not handle XHTML at all.

jdbartlett said on December 21, 2007

Great roundup. Even if XHTML is missing from the next release, rendering something when shown application/... MIMEs would be nice. IE's dev team has told us, "not until we can do it properly," but besides the absence of a YSOD, what problems will mistreatment of XHTML introduce to developers?

Andrew said on December 21, 2007

So what does this mean for the fate of IE7?

Paul Irish said on December 21, 2007

RE: standards mode.

I don't know why the opt-in mechanism need be something other than doctype. Imagine if every browser implemented a similar opt-in mechanism.. It'd be a mess.

Alan Gresley said on December 21, 2007

@ Paul Irish

I don't think it will go down to well with other browser vendors having to add a new doctype. Please have a look at the currents doctypes. They are telling the browser which flavour of (x)html the document is written in. There no place for additional information to be included in these doctype. Even the IE team realizes that a new doctype isn't the answer. Read the CSS WG public mailing list archives for details.

http://lists.w3.org/Archives/Public/www-style/2007Dec/

Neil Anderson said on December 21, 2007

We can forget about IE6? From W3C schools which being techie can be considered skewed in favor of FF.

IE7 21.0%
IE6 33.6%
IE5 1.6%

We can't even consider IE5 forgettable yet, let alone IE6.

Jonathan Snook said on December 21, 2007

@jdbartlett: If they accepted the application/xml+xhtml mime type, then developers who develop for IE-only run the risk of their pages not working on anything but IE. There are also some other subtleties in developing for strict XHTML that could cause problems (off the top of my head, I think of possible SCRIPT and CSS handling differences).

Re: the new "IE8 standards mode". The problem with relying on using the doctype to switch to the new rendering engine is that IE has been using this since IE6. That means, any page with a proper doctype but built to work around IE6 or IE7 runs the risk of not working properly in IE8. Again, IE's commitment is to the end user who's expectations are that sites will continue to behave the same from one version to the next. I still think a special meta tag will be used... it'd be interesting to see them use an http-equiv such that you could set a whole server to use the new rendering engine instead of having all pages needing to include the new value.

An interesting counter point brought up by HÃ¥kon Wium Lie on the www-style list is the fact that IE "out-of-the-box" won't pass the Acid2 test because the test page would need to be modified to include the custom switch. I'm not sure there's necessarily a way around that, though.

Neal said on December 21, 2007

I Like Jonathan idea (or statement) about the meta tag standards mode rather than another user mentioning a "button" that is clicked to choose a mode. Microsoft could also go the same route that they did with the IF IE statements and just wrap some text within a comment that triggers the mode. Like most Microsoft products backwards compatibility is their greatest strength and their greatest weakness.

Joshua Allen [msft] said on December 21, 2007

Jonathan: Good analysis. IE7 was murder; fixing so many standards bugs in the browser ended up breaking lots of pages that depended on the bugs. We proactively contacted thousands of websites and helped them fix their bugs, but there are millions of web sites out there, and we couldn't contact every one. Many pages don't even have active maintainers anymore. As we explained, passing Acid2 wasn't an explicit goal, it was just a side-effect of improving standards support. So I don't think anyone is going to complain if a hater on the sidelines blurts out "IE8 in IE7 compat mode won't pass Acid2!" Alan's comments are right-on.

I personally lament the current purgatory of XHTML in W3C, but what can you do?

jdbartlett said on December 22, 2007

Jonathan: sorry to be trite, but I do find it doubtful that someone developing for IE only is interested enough in standards to use correct MIME types; but I still see your point. Most developers are either avoiding XHTML 1.1 or using incorrect MIME types just to satisfy IE. When XHTML is requested, I use a PHP script to detect browser support of XHTML in the HTTP_ACCEPT headers, and output headers and MIME types accordingly (1.1 for supporting browsers, 1.0 for the rest). I have found some minor differences in CSS and script handling, but most were caused by browser bugs.

Joshua, are you suggesting that IE's dev team won't begin working on XHTML support until after XHTML 1.1 SE/XHTML 2.0 is finalized by W3C? Aren't you worried that will put a lot of stress on the team: one Yes from W3C, and MSFT's suddenly required to catch up with years of work from other vendors. And what about the XHTML 1.1 recommendation that has existed since 2001, will that ever see support from IE?

Lars Gunther said on December 24, 2007

Microsoft, the new IBM! For how long did IBM support punch cards or have technologies burdened by their punch-card legacy, like EBDIC?

Dave McNally said on December 26, 2007

It's always good news to hear of improvements where IE is involved but just how important is this Acid Test anyway?

Isn't IE8 one of the very few to pass this? In fact, I don't actually know of any others which makes me think it can't be very important...At least I figure we can all finally begin waving farewell to IE6.

adi azar said on December 29, 2007

Man,

Microsoft just making failure after the other. They release IE7 after many years and it was B.S. Same with Vista. Hard to trust those guys :)

Adi

Jermayn Parker said on December 31, 2007

Coming in late to this discussion I know but do you really think IE6 will disappear?? I personally doubt it, IE7 has been around long enough and is an automatic upgrade to XP etc but I still see a lot of people continually use IE6.

just my 2c

Stifu said on January 02, 2008

"Isn't IE8 one of the very few to pass this?"

No, every major browser passes this test (in their development version, at least). Not counting IE, Firefox was the last to the party (behind Webkit and Opera), when a Firefox nightly first passed it in December 2006 (which means Firefox 3 will pass the test, but Firefox 2 doesn't).

Michael Montgomery said on January 02, 2008

"The part that scares people is the thought of including proprietary markup every time another browser version is released."

Consider me scared.

Dennison Uy said on January 06, 2008

Will IE8 be supporting the RGBa color notation /mode? Does anyone have a definitive answer for this?

Bridget Stewart said on January 07, 2008

I would be really surprised to see IE6 "gone" by Christmas '08. It is currently the most used browser that visits the site where I work.

I welcome it being gone -- but I would be surprised that it could happen in the next 12 months.

Paul D said on January 10, 2008

Re: dropping support for IE6?

Unfortunately way too many people use hooky versions of windows. Without passing windows validation they can't upgrade from IE6 ...

There's also the issue with those on corporate networks - I work for RBS and we're all on IE6.

Ms. Designer said on January 10, 2008

I've gotta say, what a great site, like the design elements.

it really is hard to trust Microsoft with the upcoming software developments, especially when looking at their trail of failures in the recent past. As per IE 8 - good luck to that being any better than the conventional. Albinora...

Rob said on January 12, 2008

IE8 DOES NOT PASS THE ACID2 TEST. They used an offline doctored version of the test page and only managed to "render" the smiley face. IE8 cannot and will not pass Acid2 when it is released. Microsoft smoke and mirrors.

Firefox passes the real test.
Opera passes the real test.
IE does not pass the real test.

You can't "adjust" the test to give advantage to this company like some poor, disadvantaged welfare program.

Sorry, comments are closed for this post. If you have any further questions or comments, feel free to send them to me directly.