私は印刷機能を行っています。私が得ている問題は、印刷されているページが CSS フォーマットを保持していないことです。CSS を使用せずに印刷物にプレーン テキストを表示しています。CSSフォーマットを変更せずにページを印刷する方法を知っている人はいますか?
2 に答える
印刷しようとしているサイトには、印刷用のカスタム スタイルシートが含まれている可能性があります。多くの場合、このスタイルシートは単純化され、印刷可能なページに収まるように作成されています。印刷用の CSS ファイルを変更または削除する権限がない限り、これについてできることはあまりないと思います。
1 つのマークアップの例。
<link rel="stylesheet" type="text/css" media="print" href="print.css" />
おそらく、javascript を使用してプログラムでスタイル シートを削除する方法があると思いますが、よくわかりません。
まだ疑問に思っている人のために簡単に言うと、次のように、リンク マークアップに 'media="screen" ' を含む CSS スタイルシートを作成できます。
<link id="Link1" href="../Styles/MainStyleSheet.css" rel="Stylesheet" type="text/css" runat="server" media="screen" />
これにより、ブラウザ画面に表示されるものがスタイルされます。
次のように、リンク マークアップに 'media="print" ' を含む別の CSS スタイルシートを使用することもできます。
<link rel="stylesheet" href="../Styles/print_voucher.css" type="text/css" media="print" />
これにより、ユーザーが印刷プレビューを表示したとき/紙に印刷されたときに表示されるものがスタイルされます。
次のようなものを置く場合:
.inprintdisabled
{
display: none;
}
print_voucher.css ファイルで。HTMLコードのどこでも
<div class="inprintdisabled">
ブラウザウィンドウにそのdivの内容が表示されますが、印刷プレビューウィンドウに印刷/表示されません。
同様に、
.inprintOnly
{
display:none;
}
MainStyleSheet で
<div class="inprintOnly">
HTML コードでは、ブラウザ画面には表示されないが、印刷プレビュー/印刷時に表示されるオブジェクト (テキスト、画像など) を含めることができます。
お役に立てれば。