March 21, 2006

Seven

I have yet to download and install an IE7 beta, but it sounds like it's actually time to start paying attention to the latest release (Beta 2 Preview). We're hearing reports from MIX 06 that the browser is essentially done in terms of CSS implementation:

Really interesting stuff from the above links. I'm impressed with what we've heard regarding the now-standards-aware IE team. On the flip-side, Roger Johansson brings up an excellent point: whether we'll need a new way to self-clear floats in IE7.

Wow, this is a bit frightening, as I've been using the easy clearing method extensively, finding it to be pretty rock solid and predictable. It's especially handy to use this to group components that use complicated floats and most importantly keeping them independent as self-contained, bulletproof "modules". Being self-contained means they're not dependent on subsequent elements in order to clear, and can then be moved around at will. Handy stuff.

So, it appears we'll need a way to self-clear floats in IE7 that doesn't use the still unsupported :after pseudo-element and the now fixed height: 1%; trick that previous versions of IE/Win so lovingly accepted. Here's hoping there's an alternative out there (aside from floating the container among others). I'm sure there will be, but even then this particular method would now feature 3 different declarations in order to work across browsers (actually add a few more in if you'd like IE5/Mac to work).

Update: Roger has posted an update, where a solution using display: inline-block; instead of display: inline-table; seems to do the trick for IE7. It's a tad more complicated as to why this works, so be sure to read Claire Campbell's informative write-up.