XSL-FO 表格

XSL-FO 使用 <fo:table-and-caption> 元素来定义表格。


XSL-FO 表格

XSL-FO 表格模型与 HTML 表格模型是非常不同的。

有九种 XSL-FO 对象可用来创建表格:
  • fo:table-and-caption
  • fo:table
  • fo:table-caption
  • fo:table-column
  • fo:table-header
  • fo:table-footer
  • fo:table-body
  • fo:table-row
  • fo:table-cell

XSL-FO 使用 <fo:table-and-caption> 元素来定义表格。它包含一个 <fo:table> 以及一个可选的 <fo:caption> 元素。

<fo:table> 元素包含:
  • 可选的 <fo:table-column> 元素
  • 可选的 <fo:table-header> 元素
  • <fo:table-body> 元素
  • 可选的 <fo:table-footer> 元素

这些元素中的每一个都可能拥有一个或多个 <fo:table-row> 元素,而 <fo:table-row> 同时会带有一个或多个 <fo:table-cell> 元素:

  1. <fo:table-and-caption>
  2. <fo:table>
  3. <fo:table-column column-width="25mm"/>
  4. <fo:table-column column-width="25mm"/>
  5. <fo:table-header>
  6. <fo:table-row>
  7. <fo:table-cell>
  8. <fo:block font-weight="bold">车辆</fo:block>
  9. </fo:table-cell>
  10. <fo:table-cell>
  11. <fo:block font-weight="bold">价格</fo:block>
  12. </fo:table-cell>
  13. </fo:table-row>
  14. </fo:table-header>
  15. <fo:table-body>
  16. <fo:table-row>
  17. <fo:table-cell>
  18. <fo:block>保时捷</fo:block>
  19. </fo:table-cell>
  20. <fo:table-cell>
  21. <fo:block>$50000</fo:block>
  22. </fo:table-cell>
  23. </fo:table-row>
  24. <fo:table-row>
  25. <fo:table-cell>
  26. <fo:block>玛莎拉蒂</fo:block>
  27. </fo:table-cell>
  28. <fo:table-cell>
  29. <fo:block>$48000</fo:block>
  30. </fo:table-cell>
  31. </fo:table-row>
  32. </fo:table-body>
  33. </fo:table>
  34. </fo:table-and-caption>