Jeremias Maerki wrote:
> Hi Vincent
> Looks like you uncovered one of my past mistakes. Looking again at all
> this stuff, I have to agree that the table's outer border has to lie
> outside the table's content-rectangle, and that content-rectangle is
> inset relative to the parent reference area by start-indent. Like it
> happens with fo:block. Right now, fo:table (border-collapse=separate)
> behaves differently from fo:block. There's only a difference here if
> border-collapse is collapse, but not for the "separate" case.
> The stuff about the "outermost grid boundary line" is covered by the
> normal FO box model with the speciality that fo:table has no padding.
Well I’ve never really understood that section since, to my knowledge,
space-start doesn’t apply to block areas. The formula makes sense only
by replacing space-start with start-indent. The sentence would be
rephrased like this:
“the start-edge of its allocation-rectangle is parallel to the
start-edge of the content-rectangle of R (where R is the closest
ancestor reference-area of B), and offset from it inward by
a distance equal to the block-area's start-intrusion-adjustment (as
defined below), minus its border-start and padding-start”
Since (assuming writing modes are the same) the start-edge of the
content rectangle is offset from the start-edge of the allocation
rectangle inward by start-indent, that leads to a sensible result. Do
So according to you the outermost grid boundary line should coincide
with the content rectangle? In which case, in addition to the table’s
border, half of the border-separation should lie in the margin. This is
also my interpretation but that’s not what XSL Formatter is doing.
> Out of this follows: The following test cases have to be revisited:
That’s quite strange because not specifying any margin on the table, you
get the outer border in the margin (but the border-separation is
currently not taken into account —indeed half of it is missing in the
table’s outer border). As soon as you specify margin=0 like in the above
testcases the layout goes wrong. Hmmm...