RE: "non-zero top border" in 8.3.1

On Wed, 29 Aug 2007, Alex Mogilevsky wrote:
> 
> 1) without the "top border" rule, there is some continuity in position 
> of empty elements (see attached sequence): removing element's content 
> normally doesn't change its position. It may shift it vertically when 
> its bottom border collapses with its top border

Indeed, there are several discontinuities in the margin collapsing 
algorithm. They were known when the rules were established, it was decided 
at the time that this was acceptable. (In particular, I recall drawing a 
set of diagrams in a meeting room in Oslo illustrating some of them.)


> 2) when "top border" rule is added, it has to be understood when exactly 
> it happens. Does the previous rule ("If the element's margins are 
> collapsed with its parent's top margin, the top border edge of the box 
> is defined to be the same as the parent's.") still apply? But that's not 
> what would happen if the parent had a top border. But if it didn't 
> apply, expected behavior in test 68 would not be correct.

I don't understand what you're asking. The two sub-bullet points of the 
6th bullet point of 8.3.1 are mutually exclusive for any one element, but 
the rules are applied to all self-collapsing blocks, so for any one set of 
margins in a set of self-collapsing blocks the rules might apply 
differently for different blocks. Could you elaborate?


> 3) I don't really have a preference towards any existing implementation 
> (including that of IE7). I want to find what is considered correct by 
> the standard (existing interop is a bonus but not really required). I am 
> not convinced that current browsers have the same position though. 
> *DBarron*, is it fine with you to say that Mozilla's is incorrect in 
> http://www.hixie.ch/tests/adhoc/css/box/block/margin-collapse/068.html ?

I can't speak for the browser vendors, so I'll let them answer.

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Tuesday, 4 September 2007 21:33:00 UTC