
 AH Formatter /
  AH Formatter /  XSL Formatter
  XSL Formatter | XSLT/XSL-FO/SVG/MathML 仕様についてXSL-FO | 
 | 
| Q. | ページの始めのblockで space-before="2.0in"を指定したのですが、有効になりません。なぜですか。
[No.2002102507] | 
|---|---|
| A. | 
例えば次のFOのとき、 <fo:flow> <fo:block space-before="2.0in"> AAAAAAAA </fo:block> </fo:flow> 参照エリア、行エリアの先頭と最後のspaceの conditionality は "discard" がデフォルトです。 したがって、参照エリアの始めの block で space-before="2.0in"を指定しても、space-before.conditionality="discard" によって無効になります。 また、次の例でも同じです。 
<fo:flow>
  <fo:block>
    <fo:block space-before="2.0in">
    AAAAAAAA
    </fo:block>
  </fo:block>
</fo:flow>
親のblockに discard の対象となる space や border/padding がない場合、子の最初のblockに条件が当てはまり、space-before.conditionality="discard"となるので、子のblockに設定されているspace-before="2.0in"は無効になります。 よって、space-beforeを有効にしたいときは、次のようにspace conditionalityを"retain"にする必要があります。 <fo:flow> <fo:block space-before="2.0in" space-before.conditionality="retain"> AAAAAAAA </fo:block> </fo:flow> |