1

巨大なxmlファイルがあります。そして、xsl で html テーブルに変換されています。ブラウザでは、垂直スクロールバーのある単一のページです。

しかし、ドキュメントを印刷したいときは、約10ページを見ることができます。すべての印刷ページにテーブル ヘッダーを追加したいと考えています。

サンプル XML:

<page>
   <document>
      <id>100</id>
      <name>SomeName</name>
      <date>02.02.2009</date>
   </document>
   ...
</page>

そしてそれのためのxsl:

<?xml version='1.0'?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/page">
   <table border="1">
      <tr>
         <th>Id</th><th>Name</th><th>Date</th>  <!-- I want to see this on every page -->
      </tr>
      <xsl:apply-templates/>
   </table>
</xsl:template>

<xsl:template match="document">
   <tr>
      <td>
         <xsl:value-of select="id"/>
      </td>
      <td>
         <xsl:value-of select="name"/>
      </td>
      <td>
         <xsl:value-of select="date"/>
      </td>
   </tr>
</xsl:template>
</xsl:stylesheet> 

すべてのページにヘッダーを出力する手段として XSL-FO を考えていますが、ブラウザではサポートされていないことを理解しているため、XSL-FO ドキュメントを処理するには特別なソフトウェアが必要です。

では、Web ページの印刷版にヘッダーを追加する正しい方法は何ですか?

4

2 に答える 2

2

ブラウザ用にコンテンツを事前にページ付けしたくはありません。ブラウザが予想とはわずかに異なる縮尺で印刷されることは避けられず、見栄えも悪くなります。絶対に最善の選択肢は、印刷方法を指定したコンテンツの PDF を提供することですが、それはあなたがやっていることには適合しません。

残念ながら、HTML としてレンダリングされた印刷ページで要求したときに、ページ分割されたヘッダーを提供する標準化された方法はありません。

于 2009-11-11T12:48:02.007 に答える
0

<thead>これは、セクションと CSSの組み合わせを使用して行うことができます。<thead>セクションがありません。このリンクをチェックしてください。

于 2009-11-11T12:53:37.150 に答える