XSLT/XSL-FO/MathML テクニックフロート |
|
Q. | side-float の中に、fo:blockを配置してその内容として文字列を入れました。 そうしたところside-floatの幅がregion-bodyの幅一杯になってしまいました。 floatの幅はどのように決まるのでしょうか。 [No.2002093015] |
---|---|
A. |
fo:floatの幅は、その内容により決まります。W3CのXSL-FO仕様の勧告に次のようにありま す。 ... Side-floats derive their length in the inline-progression-dimension intrinsically from their child areas; the length is not determined by an explicit property value. しかし、W3CのXSL-FO仕様の勧告ではside-floatの内容が幅をもたない場合のことが規定されていません。 Side-floats derive their length in the inline-progression-dimension intrinsically from their child areas という文章からはfo:float の内容は、行の折り返しのある段落であるということは想定されていないかのようです。 fo:float に直接 inline-progression-dimension (width) を指定できない仕様ですので、このような場合の対処方法としては、fo:float 内に fo:block-container を入れて、inline-progression-dimension を指定してください。 |