特定の画面で、ユーザーにデータを印刷させる必要があります。表示されるデータは複雑であるため、次のラベルが使用されます。
lblTree.Text = stringHTML;
ツリーは、動的に構築されたHTML文字列を使用して表示されます。最終的な文字列の長さは52000文字です。それは重要ではないと思いますが、背景を説明したいと思いました。aspxでは、次のようになります。
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="3" align="left" class="PrintTBLHeader"><br />report as of 20/09/2012 : <br /><br /></td>
</tr>
<tr>
<td colspan="3"><br /><asp:Label runat="server" ID="lblTree"></asp:Label><br /><br /></td>
</tr>
<tr>
<td colspan="3" align="left" class="PrintTBLHeader"><br />2nd title:<br /><br /></td>
</tr>
<tr>
<td colspan="3"><br /><asp:Label runat="server" ID="lblMPMtree"></asp:Label></td>
</tr>
</table>
問題はこれです:印刷プレビューを開くと、6ページと表示されます(FirefoxやChromeのように-これらは正しく機能しています)が、IE8からのこの印刷プレビューでは3ページしか表示されません。
lblTreeは1ページ目の終わりで切り取られます次に2ページ目では、lblTreeの残りの部分を表示する代わりに、「2番目のタイトル」(上記の例ではtr#3)で始まります。
私は、ソリューションがに追加media="print"
されていた、このようなものに関連するいくつかの記事を見つけました<link>
。
<link rel="stylesheet" type="text/css" href="..." media="print" />
それはうまくいきませんでした。