Float Model

>From http://www.w3.org/TR/2008/REC-CSS2-20080411/visuren.html#floats :

"Since a float is not in the flow, non-positioned block boxes created
before and after the float box flow vertically as if the float didn't
exist. However, line boxes created next to the float are shortened to
make room for the floated box. Any content in the current line before
a floated box is reflowed in the first available line on the other
side of the float."

"When a block box overlaps, the background and borders of the block
box are rendered behind the float and are only be visible where the
box is transparent. The content of the block box is rendered in front
of the float."

As you may or may not know IE ignores this definition (see
http://www.positioniseverything.net/explorer/floatmodel.html ) and
wraps both inline and block elements.

Usually I agree with the standards over what IE chooses to do,
however, in this case, there is nothing desirable about the standards
float model, while the IE float model makes a lot more sense. Since
the standards model has caused me a LOT of problems in webdesign which
would be EASILY avoidable just by using IE, I would like to at least
know the reason behind this choice, and request this be reconsidered.
Perhaps a new style attribute could be added to block elements to
define which float model to use.

Received on Monday, 6 October 2008 01:21:48 UTC