- From: fantasai <fantasai.lists@inkedblade.net>
- Date: Mon, 14 Jan 2008 23:40:25 -0500
- To: Alan Gresley <alan1@azzurum.com>
- CC: www-style@w3.org
Alan Gresley wrote: > I would please like clarification on the specs for "9 Visual formatting model." > ... > 9.4.1 Block formatting contexts (part of 3rd paragraph): > > #In a block formatting context, each box's left outer edge > #touches the left edge of the containing block. This is true > #even in the presence of floats, unless the box establishes a > #new block formatting context. > > This has been changed to - > http://www.w3.org/TR/CSS21/changes.html#q54 > C.2.47 Section 9.4.1 Block formatting contexts > > |In a block formatting context, each box's left outer edge > |touches the left edge of the containing block. This is true > |even in the presence of floats, except boxes that establishes > |a new block formatting context. I can't figure out where you're quoting from. > A few questions: > > 1. Is the "box's left outer edge" the same as the boxes left margin edge if one is present? Yes. See http://www.w3.org/TR/CSS21/box.html#box-dimensions > 2. What is the difference between "unless the box establishes a new block formatting context" > and "except boxes that establishes a new block formatting context?" Nothing aside from the grammar. > 3. Doesn't this reflect the old spec for "9.5 Floats" mentioning a margin box > instead now the border box? > > This seems to contradict part the reason of the change in the spec, though I'm > not aware what the original Gecko bug was. > http://lists.w3.org/Archives/Public/www-style/2007Apr/0040.html I don't think there's a conflict. > Could 9.5 Floats (5th paragraph) be re-worded: > > |In a block formatting context, each box's left outer edge > |touches the left edge of the containing block. This is true > |even in the presence of floats. In the case of a box that > |establishes a new block formatting context, the box itself may > |become narrower due to the floats. > > and tying in with the last part of "9.4.1 Block formatting contexts" > > |If necessary, implementations should clear the said element > |by placing it below any preceding floats, but may place it > |adjacent to such floats if there is sufficient space. The current 9.5 5th paragraph says: # The border box of a table, a block-level replaced element, or an # element in the normal flow that establishes a new block formatting # context (such as an element with 'overflow' other than 'visible') # must not overlap any floats in the same block formatting context as # the element itself. If necessary, implementations should clear the # said element by placing it below any preceding floats, but may place # it adjacent to such floats if there is sufficient space. They may # even make the border box of said element narrower than defined by # section 10.3.3. CSS2 does not define when a UA may put said element # next to the float or by how much said element may become narrower. I can't see how we could possibly replace it with the text you give and still keep the intended meaning. ~fantasai
Received on Tuesday, 15 January 2008 04:40:33 UTC