Re: [CSS21] contradiction regarding blocks with clear at the end of a block

I agree.  The definition of the height of a block needs to be amended  
to account for this.

dave

On Mar 29, 2007, at 4:29 PM, L. David Baron wrote:

> http://www.w3.org/TR/2006/WD-CSS21-20061106/box.html#collapsing- 
> margins
> contains the following text:
> # When an element's own margins collapse, and that element has had
> # clearance applied to it, its top margin collapses with the
> # adjoining margins of subsequent siblings but that resulting margin
> # does not collapse with the bottom margin of the parent block.
>
> I believe this text was intended to ensure that clear on an empty
> block at the end of its parent expands the height of that parent.
>
> However, the definition of the height of a block in
> http://www.w3.org/TR/2006/WD-CSS21-20061106/visudet.html#normal-block
> contradicts this:
> # If it has block-level children, the height is the distance between
> # the top border-edge of the topmost block-level child box that
> # doesn't have margins collapsed through it and the bottom
> # border-edge of the bottommost block-level child box that doesn't
> # have margins collapsed through it.
>
> I think the correct fix for this problem would be to change the last
> sentence of the paragraph that I quote from 10.6.3 somehow to
> reflect that the height also ends at the bottom margin edge of the
> bottommost child if the clause from 8.3.1 quoted above is being
> applied.
>
> If we don't make this change, I believe that implementations that
> pass the attached testcase (which the ones I've tested so far do)
> would be nonconformant because they violate the rule in the quote
> from 10.6.3 above (since the div with clear has margins collapsed
> through it).
>
> -David
>
> -- 
> L. David Baron                                <URL: http:// 
> dbaron.org/ >
>            Technical Lead, Layout & CSS, Mozilla Corporation
> <clear-empty-block.html>

Received on Thursday, 29 March 2007 23:42:14 UTC