On 16.06.2006 15:07:25 Chris Bowditch wrote: > Martin Zak wrote: > > Hi all, > > I'm using the absolutely positioned block-container for a side-note. > > The page body has left margin defined while block-container has > > start-indent set to 0pt. > > (so the block-container is rendered in a "column" left to the rest of > > the text on page like this: > > > > <snip/> > > > <fo:page-sequence format="1" master-reference="sequence-chapter"> > > <fo:flow font-family="Times" font-size="12pt" > > flow-name="xsl-region-body" margin-left="1.37in"> > > > > <fo:block-container margin="0pt" padding="0pt" width="30pt" > > start-indent="0pt" absolute-position="absolute"> > > <fo:block>[abs]</fo:block> > > </fo:block-container> > > > > <fo:block space-before="9pt">lorem ipsum dolores...</fo:block> > > Whats happening here is the rules of conditional spacing. If a space is > the first in the reference area (fo:flow in your example) then the > default is to discard the space. If the space is not the first thing in > a reference area then its is retained. It seems the block-container > fools FOP into thinking that there is something before the space in the > reference area and it is therefore retained.
Indeed, the BlockContainerLayoutManager creates a KnuthBox (w=0) in the element list for the absolutely positioned block-container which is currently interpreted by the SpaceResolver as a fence. And a fence makes the SpaceResolver believe that there's content before the space. Looks like we should find a solution to indicate to the SpaceResolver which boxes are no fences. Another example would be the often-used empty block at the end of the flow for "page x of y" which probably creates a fence, too. > Without knowing the full context of your application I'm not sure of a > wrokaround. Specifying space-before.conditionality="retain" will ensure > the space is always shown, regardless of whether there is a block > container or not. > > <snip/> > > Chris Jeremias Maerki --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
