5

xsl-fo 名前空間のブロック要素でテーブルを中央に配置しようとしています。

ここに私がしようとしているものがあります:

 <fo:block margin-right="auto" margin-left="auto" background-color="#eaeaea">
     <fo:table margin-top="1cm" margin-left="auto" margin-right="auto" margin-bottom="1cm" width="auto">

そして、これは出力です:

ここに画像の説明を入力

このテーブルをこのブロックの中央に配置するにはどうすればよいですか?

ありがとうございました。

4

4 に答える 4

7

仕様によると、 aは親要素<table>を使用して中央に配置されます。兄弟はオプションであり、テーブルが唯一の子になるように省略できます。text-align="center"<table-and-caption><table-caption>

これはtext-align、親を配置しても機能しないことに注意してください<block>...子<table>はまだブロックレベルの構造であり、影響を受けません。親にある必要があり<table-and-caption>ます。

XSL-FO の学生には、子孫構造体のプロパティの継承により、テーブルの内容も中央に配置することを望まない限り、おそらく が必要text-align="start"になることを思い出してください。<table>

この点に関して、すべての XSL-FO プロセッサが仕様をサポートしているわけではないという私の商用作業に基づく追記に注意してください。

于 2013-08-28T13:23:52.400 に答える
1

Apache FOP を使用している場合は、ここでテーブルのセンタリング手法について説明しています: https://xmlgraphics.apache.org/fop/fo.html#fo-center-table-horizo​​n

于 2015-03-05T17:26:26.957 に答える