This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Understanding Conditionality of Borders


I'm trying to understand border conditionality. The text in the XSL spec
is pretty brief and because of the way the properties are documented it
isn't obvious that these conditions even exist unless you do a close
reading of the spec.

In section 4.3.1, Space-resolution Rules of XSL 1.0 there is this
paragraph:

"The border or padding at the before-edge or after-edge of a block-area
B may be specified as conditional. If so, then it is set to zero if its
associated edge is a leading edge in a reference-area, and the is-first
trait of B is false, or if its associated edge is a trailing edge in a
reference-area, and the is-last trait of B is false. In either of these
cases, the border or padding is taken to be zero for purposes of the
stacking constraint definitions."

It isn't explicit, but given my experience with how
border-width.conditionality="retain" works with XSL Formatter, my
interpretation of the above is that when .conditionality="retain", it
means that if a block spans two areas (e.g., spans a page), then, for
example, the border-after border for that block is "retained" in the
block for which is-last is false (that is, the occurrence before the
page break). The default for conditionality is "discard".

Is this understanding correct?

Given that I probably never would have figured this out on my own had
the folks at Antenna House not put me on to border-width.conditionality,
I would urge the writers of XSL tutorials to include a discussion of
this important but subtle aspect of XSL-FO. 

Thanks,

Eliot
-- 
W. Eliot Kimber, eliot@isogen.com
Consultant, ISOGEN International

1016 La Posada Dr., Suite 240
Austin, TX  78752 Phone: 512.656.4139

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]