如何将页面 xsl fo 上的行保持在一起?

How to keep rows together on a page xsl fo?

我希望代码及其说明显示在同一页面上。如果描述很长,那么代码和描述都应该显示在下一页。

<xsl:template match="LineOfTastingNote">
<fo:table-row font-family="Avenir" keep-together.within-page="always" >
  
  <fo:table-cell padding-bottom="0.5mm" padding-left="0.1cm" >
    <fo:block font-size="8pt" text-align="left" font-weight="bold">
   <xsl:value-of select="Code" /> 
    </fo:block>
  </fo:table-cell>
  
</fo:table-row>

 <fo:table-row font-family="Avenir" >
  
  
  <fo:table-cell padding-left="0.1cm" padding-bottom="0.5mm" padding-right="8cm" >
    <fo:block font-size="8pt" text-align="left">
    <xsl:value-of select="Description" /> 
    </fo:block>
  </fo:table-cell>

</fo:table-row>



 </xsl:template>

示例:

product1
Apple Cider vineger1
product2
Apple Cider vineger2
*
*
*

productlastofpage
-------------------------------end of page 1 
-------------------------------start of page 2
Apple Cider vinegerend


 -------------------------------endof page 2

我希望代码 productlastofpage 及其描述显示在第 2 页上 'Apple Cider vinegerend',尝试了 keep-together.within-page="always" 但没有成功。

你想要 keep-with-next.within-page(参见 https://www.w3.org/TR/xsl11/#keep-with-next),而不是 keep-together.within-page

您的 keep-together.within-page="always" 只是将 table 行放在一页上,而没有说明下一行。

还有keep-with-previous(包括keep-with-previous.within-page)。