AH Formatter / XSL Formatter
Q&A



XSLT/XSL-FO/SVG/MathML 仕様について

XSL-FO

トップ
基本・一般
AH Formatter について
XSL Formatter について
操作方法
プログラミング
XSLT/XSL-FO/SVG/MathML 仕様について
XSLT/XSL-FO/MathML テクニック
索引
Q.  orphans/widowsプロパティを指定したのですが、有効になりません。 [No.2003050901]
A. 

W3CのXSL-FO仕様の勧告から参照されているCSS2仕様には次のように書かれています。

13.3.4 Allowed page breaks

In the normal flow, page breaks can occur at the following places:

1. In the vertical margin between block boxes. When a page break occurs here, the computed values of the relevant 'margin-top' and 'margin-bottom' properties are set to '0'.

2. Between line boxes inside a block box.

These breaks are subject to the following rules:

Rule A: Breaking at (1) is allowed only if the 'page-break-after' and 'pagebreak- before' properties of all the elements generating boxes that meet at this margin allow it, which is when at least one of them has the value 'always', 'left', or 'right', or when all of them are 'auto'.

Rule B: However, if all of them are 'auto' and the nearest common ancestor of all the elements has a 'page-break-inside' value of 'avoid', then breaking here is not allowed.

Rule C: Breaking at (2) is allowed only if the number of line boxes between the break and the start of the enclosing block box is the value of 'orphans' or more, and the number of line boxes between the break and the end of the box is the value of 'widows' or more.

Rule D: In addition, breaking at (2) is allowed only if the 'page-break-inside' property is 'auto'.

Rule Cがorphansやwidowsが適用される条件です。これは"2.Between line boxes inside a block box."の場合ですので、ひとつのblockの中のlineに対してorphans/widowsが適用されます。
したがって、orphans/widowsプロパティを指定したblock areaの中に複数のblockが含まれている場合、内側のblockの境界では改ページすることがあります。


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