AH Formatter / XSL Formatter
Q&A



XSLT/XSL-FO/MathML Technics

Table

Top
Basic, General
About AH Formatter
About XSL Formatter
Operation
Programming
XSLT/XSL-FO/SVG/MathML Conformance
XSLT/XSL-FO/MathML Technics
Index
Q.  When I put fo:inline inside the table cell, The table cell exceeds the right side of the page. What's wrong? [No.2003011705]
A. 

In your XSL-FO:

<fo:table-cell margin-top="10pt" margin-bottom="10pt" font-weight="bold">
  <fo:block text-align="justify" keep-together="always">
    Antenna House XSL Formatter
  </fo:block>
  <fo:block text-align="justify" keep-together="always">
    <fo:inline font-weight="bold">
      XSL Formatting engine that is based on XSL Version 1.0, a recommendation of the W3C.
    </fo:inline>
  </fo:block>
</fo:table-cell>

keep-together="always" is specified to fo:block. keep-together has the 'within-page', 'within-column' and 'within-line' components. Therefore if you specify the keep-together="always" property, it is equal to specifying "always" to all the three components, and "always" is specified to keep-together.within-line.

And it is inherited to fo:inline. Therefore this property tries to set in single string.

In your document, it's better to specify keep-together.within-page="always" rather than keep-together="always", so that the table cell fits in one page.

<fo:table-cell margin-top="10pt" margin-bottom="10pt" font-weight="bold">
  <fo:block text-align="justify" keep-together.within-page="always">
    Antenna House XSL Formatter
  </fo:block>
  <fo:block text-align="justify" keep-together.within-page="always">
    <fo:inline font-weight="bold">
      XSL Formatting engine that is based on XSL Version 1.0, a recommendation of the W3C.
    </fo:inline>
  </fo:block>
</fo:table-cell>

Copyright © 1999-2011 Antenna House, Inc. All rights reserved.
Antenna House is a trademark of Antenna House, Inc.