質問: XSL-FOで全ての < fo:block-container> 配下の最初の< fo:block>要素にのみ、 @background-color="#EEEEEE" を指定したいと考えています。 そういったことは技術的に可能でしょうか? どのように実装すれば良いでしょうか? --- ``` background-color="#EEEEEE"にしたい ```
回答: XSL-FOはその名が示す通り組版オブジェクト(Formatting Object)と、その属性を示すプロパティ(Property)から構成されます.すべての組版のための属性はXSL-FOの中に反映されていることが必須です. 従って > > 配下の最初の< fo:block>要素にのみ、@background-color="#EEEEEE" を指定 > > > というのはXSL-FOを生成する過程(通常はXMLにXSLTスタイルシートを適用する処理)で行われるべきものです. HTML + CSSのようにレンダリング時に動的にスタイルが適用されるような機構とは根本的に異なるものであることを理解してください.