Standards and CSS in IE

IEBlog

Windows Internet Explorer Engineering Team Blog

Standards and CSS in IE

I’m very happy that we’ve shipped IE 7 beta 1. I wanted to make it clear that we know Beta 1 makes little progress for web developers in improving our standards support, particularly in our CSS implementation. I feel badly about this, but we have been focused on how to get the most done overall for IE7, so due to our lead time for locking down beta releases and ramping up our team, we could not get a whole lot done in the platform in beta 1. However, I know this will be better in Beta 2 – and I want to share how we are placing our priorities in IE.

In the web platform team that I lead, our top priority is (and will likely always be) security – not just mechanical “fix buffer overruns” type stuff, but innovative stuff like the anti-phishing work and low-rights IE. For IE7 in particular, our next major priority is removing the biggest causes of difficulty for web developers. To that end, we’ve dug through a lot of sites detailing IE bugs that cause pain for web developers, like PositionIsEverything and Quirksmode, and categorized and investigated those issues; we’ve taken feedback from you directly (yes, we do read the responses to our blog posts) on what bugs affect you the most and what features you’d most like to see, and we’ve planned out what we can and can’t do in IE7.

In IE7, we will fix as many of the worst bugs that web developers hit as we can, and we will add the critical most-requested features from the standards as well. Though you won’t see (most of) these until Beta 2, we have already fixed the following bugs from PositionIsEverything and Quirksmode:

  • Peekaboo bug
  • Guillotine bug
  • Duplicate Character bug
  • Border Chaos
  • No Scroll bug
  • 3 Pixel Text Jog
  • Magic Creeping Text bug
  • Bottom Margin bug on Hover
  • Losing the ability to highlight text under the top border
  • IE/Win Line-height bug
  • Double Float Margin Bug
  • Quirky Percentages in IE
  • Duplicate indent
  • Moving viewport scrollbar outside HTML borders
  • 1 px border style
  • Disappearing List-background
  • Fix width:auto

In addition we’ve added support for the following

  • HTML 4.01 ABBR tag
  • Improved (though not yet perfect) <object> fallback
  • CSS 2.1 Selector support (child, adjacent, attribute, first-child etc.)
  • CSS 2.1 Fixed positioning
  • Alpha channel in PNG images
  • Fix :hover on all elements
  • Background-attachment: fixed on all elements not just body

I want to be clear that our intent is to build a platform that fully complies with the appropriate web standards, in particular CSS 2 ( 2.1, once it’s been Recommended). I think we will make a lot of progress against that in IE7 through our goal of removing the worst painful bugs that make our platform difficult to use for web developers.

In that vein, I’ve seen a lot of comments asking if we will pass the Acid2 browser test published by the Web Standards Project when IE7 ships. I’ll go ahead and relieve the suspense by saying we will not pass this test when IE7 ships. The original Acid Test tested only the CSS 1 box model, and actually became part of the W3C CSS1 Test Suite since it was a fairly narrow test – but the Acid 2 Test covers a wide set of functionality and standards, not just from CSS2.1 and HTML 4.01, selected by the authors as a “wish list” of features they’d like to have. It’s pointedly not a compliance test (from the Test Guide: “Acid2 does not guarantee conformance with any specification”). As a wish list, it is really important and useful to my team, but it isn’t even intended, in my understanding, as our priority list for IE7.

We fully recognize that IE is behind the game today in CSS support. We’ve dug through the Acid 2 Test and analyzed IE’s problems with the test in some great detail, and we’ve made sure the bugs and features are on our list - however, there are some fairly large and difficult features to implement, and they will not all sort to the top of the stack in IE7. I believe we are doing a much better service to web developers out there in IE7 by fixing our known bang-your-head-on-the-desk bugs and usability problems first, and prioritizing the most commonly-requested features based on all the feedback we've had.

I do want to be clear that I believe the Web Standards Project and my team has a common goal of making the lives of web developers better by improving standards support, and I’m excited that we’re working together to that end.

- Chris Wilson

  • Loading...