Re: [xsl] position= and blocks (was And operator usage in XSL)

Subject: Re: [xsl] position= and blocks (was And operator usage in XSL)
From: Eliot Kimber <ekimber@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 30 Jul 2004 09:40:25 -0500
john farrow wrote:

Hi Eliot

My reading of 7.5.1 in the spec about absolute-position was that the block-container was offset from the containing area, not the
containing reference area, although what you say about a block not
establishing a reference area makes sense.

In 7.2 the "containing block" is described as the nearest ancestor
block area which is not a line area, and in the definition of "left"
in 7.5.5. the offset specified by left is said to be from the
"containing block", which I take to mean the immediate parent block,
not the reference area.

I have the feeling I am missing something - can you point me to somewhere else in the spec where it says a block is positioned relative to the containing reference area as opposed to the containing area ?

I think the section you want is section 4. Area Model. This paragraph
from 4.2.2 Common Traits establishes the primacy of reference areas (italics mine):

 "Each area has the traits top-position, bottom-position,
 left-position, and right-position which represent the distance from
 the edges of its content-rectangle to the like-named edges of the
 nearest ancestor *reference area* (or the page-viewport-area in the case
 of areas generated by descendants of formatting objects whose
 absolute-position is fixed); the left-offset and top-offset determine
 the amount by which a relatively-positioned area is shifted for
 rendering. These traits receive their values during the formatting
 process, or in the case of absolutely positioned areas, during

I think the key thing is that in XSL-FO the distinction between block and block container overrides the CSS concept of block. As the base properties are all taken verbatim from CSS, it can be a bit confusing if you look just at the property definition and don't synthesize it through the FO-specific area model and whatnot.

I agree that it's a challenge to get it all straight in one's mind and hold it there.


W. Eliot Kimber
Professional Services
Innodata Isogen
9030 Research Blvd, #410
Austin, TX 78758
(512) 372-8122


Current Thread