Есть ли альтернатива "keep-together= 'always '" в строке таблицы?

найдя атрибут" keep-together " и не нуждаясь в разрыве страницы внутри строки, я добавил keep-together="always" на каждом элементе строки таблицы в моем xslt. Есть ли лучший способ достичь того же эффекта? Это кажется немного избитым. (ПС. Я приму " нет " в качестве ответа, если никто не даст лучшего, при условии, что будет предложено какое-то объяснение.)

4 ответов


keep-together="always" опасно, потому что это составное свойство, которое также косвенно устанавливает keep-together.within-line="always" (запрещение разрывов строк внутри ячейки таблицы). Вы должны использовать keep-together.within-column="always" вместо. Но указание того, что в таблице-строке на самом деле путь. Ничего банального.

см. также:http://www.w3.org/TR/xsl11/#datatype


этот ответ решил мою проблему строки таблицы, которая текла через разрыв страницы, когда мне нужно было заблокировать таблицу вместе. я использовал <fo:table keep-together="always"></fo:table> Спасибо.


я использовал следующие три метода, чтобы сохранить строки таблицы вместе с некоторым успехом:

сохранить весь блок вместе

<tr keep-together.within-page="always">
...
</tr>

сохранить соседние блоки вместе

<tr keep-with-next.within-page="always">
    <td keep-together.within-page="always">...</td>
    ...
</tr>
<tr>...</tr>

<tr>...</tr>
<tr keep-with-previous.within-page="always">
    <td keep-together.within-page="always">...</td>
    ...
</tr>

хотя вы должны быть осторожны - если строка или ячейка будет охватывать более одной страницы сгенерированного документа, вы потеряете нижнюю часть этой страницы снизу!


с помощью xsl-форматера, который обрабатывает integer keeps, вы можете использовать целочисленное значение, чтобы форматер пытался сохранить строку вместе, но сломает строку, а не запускать конец страницы. Однако этот вопрос помечен для FOP, и страница соответствия FOP в настоящее время заявляет, что она имеет ограниченную поддержку integer keeps (http://xmlgraphics.apache.org/fop/compliance.html#fo-property-keep-together), так что YMMV.