次のようなhtmlテーブルがあります。
<div class="report">
<table>
<thead>...</thead>
<tfoot>...</tfoot>
<tbody>
<tr class="row-to-style">...</tr>
</tbody>
<tbody>...</tbody>
</table>
</div>
上記の tbody はすべて同じ構造であることに注意してください。最初の tr.row-to-style 行を他の行とは異なるスタイルにしたいと考えています。各 tbody には tr.row-to-style がありますが、ページの最初の行にのみ影響を与えたいと思います。出力はページ化されたメディア、具体的には xhtml ソース ファイルから PrinceXML で生成された pdf ファイルです。これは、高度な css セレクターを使用できること、クロスブラウザー互換性が不要であること、および JavaScript を使用できないことを意味します。
出力の最初のページでターゲット行のスタイルを設定するのは簡単です。使うことができます:
table tfoot + tbody tr.row-to-style {...}
また、ページに収まる tbody の数がわかっている場合は、次のようなことができます。
table tbody:nth-of-type(4n+1) tr.row-to-style {...}
しかし、ページに収まる tbody の数がわからない場合、どうすれば最初の tbody をターゲットにできますか?
出力では、実質的に、ページごとに thead セクションと tfoot セクションが繰り返されます。テーブルは、これを利用するために特別にこのように設計されました。tbody の後に改ページを許可します。出力には複数のページが含まれる場合があります。
したがって、出力には、各ページに一種の疑似スレッドと疑似フットがあります。しかし、ページの最初の tbody をマークするためにそのようなものを使用する方法がわかりません。何か案は?ありがとう...