display: inline-block
removes Mac IE5's need for explicit widths on floatsWhen floated elements contain no block-level elements, Mac IE5 is quite content to behave itself.
a { display: block; }
Add in a block-level element and things go awry with the floats becoming as wide as they can. This is the infamous "you must set an explicit width" for Mac IE5 floats.
a { display: inline-block; }
Feed Mac IE5 display: inline-block
instead though, and the problem goes away. As a benign side-effect IE 6 now makes the entire a
element hoverable, something which is also only usually achievable when it has an explicit width set. Modern browsers have been fed display: block
simply because Safari inserts space underneath the element.
An example using divs
to show that it's not the display: inline-block
set on the ul
elements to enable easy clearing that's the cause.