IE7 Beta 2 is now available for developers to begin testing. I’ve been suggesting on the web standards group mailing list that people need to begin looking beyond 2005 and start coding for IE7 and 2006. That doesn’t mean you design for IE7 and hack for Firefox. No, it means you can begin using more sophisticated CSS rules. Here’s a very brief summary of what I’ve seen with IE7 Beta 2 so far.
Rolling out IE7
Microsoft has an aggressive agenda to upgrade people from IE6 to IE7. By the end of Fall, we should see a significant percentage of our web site visitors using IE7 and by the end of the year, the majority of our traffic will be IE7. Those without IE7 are machines with illegal copies of XP, people with XP Service Pack 1, and those that don’t accept Microsoft service updates.
Use real CSS
If you are working on a site now, begin using real CSS.
- Use child selectors, first-child, attribute selectors, etc.
- Hover your list items and more. IE7 supports the hover pseudoclass on more than the link.
- IE7 offers full support of alpha transparent png graphics, so begin using them as well.
Forget what you knew about “* html”, those hacks now belong in a style sheet that is introduced via a conditional comment. They are gone, kaput, zilch. Sure, they’ll still work on IE6, but you’re going to have one heck of a nightmare keeping track.
I am a big fan of All that malarkey (Andy Clarke). However, his site is full of special rules for IE6 and its a great testing ground to see what IE7 chokes on and what it does as good as Firefox, Opera, and Safari. If your site is fairly hack free, you probably won’t notice a difference going from Firefox to IE7 Beta 2. Start hunting around and finding the errors.
What is still broken on IE7
There are two major issues that I have with IE7.
- No generated content. You can’t use CSS to add checkmarks to visited links, clearing containers spans, etc.
- Double float margin still exists. This can be fixed by adding display:inline to your floated objects when this problem occurs.
- While I haven’t been able to nail down the specifics, there seems to be some bugginess with positioning absolute/relative.