Continued fruits of the WaSP partnership: The “HasLayout” myth debunked

Based on some discussion in the Microsoft-WaSP task force, I wanted to explain a little more of the internal workings of IE to help web developers with their daily IE work. In this installment, you will find an article up on MSDN (as part of the ongoing “Exploring Internet Explorer” series) about the implications of an element having a “layout”. There are several bugs in IE that can be worked around by forcing “a layout” (an IE internal data structure) on an element. The most famous workaround is the Holly hack. Most developers are not aware of the implications of these “fixes” and this document will hopefully bring some light into this topic.

This document explains:

  • What is “HasLayout” and why is it important?
  • Which elements always have a layout?
  • Which elements can get a layout?
  • Examples of layout “Hacks”
  • Scenarios demonstrating the implications of “HasLayout”

I would especially like to thank Molly Holzschlag for getting me in touch with Dean Edwards, Holly Bergevin, Ingo Chao, Bruno Fassino, John Gallant, Georg Sørtun, and Philippe Wittenbergh. Their review, discussion and feedback were very valuable in putting this document together.

 - Markus Mielke