When Microsoft released Outlook 2007, HTML e-mail took a big step backward. On the web, things have been moving towards web standards. Browser vendors have been working hard to make their browsers render consistently so that developers can more easily create great sites. Outlook 2007, however, dropped support for a lot of standard HTML practices when it abandoned Internet Explorer’s rendering engine for e-mails in favor of Word’s HTML rendering, leaving HTML e-mail developers with no easy way to create right, cross-platform e-mails.
Molly Holzschlag, the Web Standards Project evangelist assigned to Microsoft, discusses the e-mail problem to give a clear idea of what happened. Unfortunately, there is little that can be done, except try to use some sort of graceful degradation or progressive enhancement in HTML e-mail. Either way, it’s not fun. In order to do this well, you should start by seeing what HTML Outlook 2007 supports and coding up examples of how to get around it.
Probably, though, you have already coded your template to find out that it doesn’t work in Outlook 2007. At this point, it’s best to go back and see how you can make your template degrade gracefully. It helps to adopt a more recently embraced ideology that it is more important that things look good given a browser’s capabilities than that they look exactly the same in every browser. Likewise, pixel perfect designs in all e-mail clients will result in a least-common-denominator look, and punish those with better rendering clients. In short, it’s better to look great in most clients, and good in others than just look good in all clients. This is especially true given the limited capabilities of Outlook 2007.