On Friday 2011-04-01 12:44 -0700, Brendan Miller wrote: > I'm reading through some of the CSS 2.1 spec to get a better grasp on > how some things work, and having some trouble parsing the section on > block formatting contexts. Maybe someone knowledgeable can help me > break this down. > > http://www.w3.org/TR/CSS21/visuren.html#block-formatting > > > Floats, absolutely positioned elements, block containers (such as > > inline-blocks, table-cells, and table-captions) that are not block boxes, > > and block boxes with 'overflow' other than 'visible' (except when that > > value has been propagated to the viewport) > > establish new block formatting contexts." > > Why do "block boxes with 'overflow' other than 'visible'" not create a > block formatting context? Do div's, which seem to default to overflow: > visible, not create a block formatting context?
Think of a "block formatting context" as a region of block layout, not just a single block. In particular, it's the region in which floats interact with each other (according to the rules the spec gives for placing floats) and 'clear' clears those floats. > I'm also confused by what "except when the value has been propagated > to the viewport" means. By, "the value" do they mean the value of > overflow? I'm not sure what propagating to the viewport means in this > context. Yes, 'overflow' on the root element or the body element is sometimes applied to the viewport instead of the element, as described in http://www.w3.org/TR/CSS21/visufx.html#overflow . -David -- L. David Baron http://dbaron.org/ Mozilla Corporation http://www.mozilla.com/ ______________________________________________________________________ css-discuss [[email protected]] http://www.css-discuss.org/mailman/listinfo/css-d List wiki/FAQ -- http://css-discuss.incutio.com/ List policies -- http://css-discuss.org/policies.html Supported by evolt.org -- http://www.evolt.org/help_support_evolt/
