0

div私は ASP.NET MVC 3 と Razor を使用しており、特定の現在の表示を印刷するために必要なビュー ページがあります。このページには、このように表示するための css がたくさんあります。css についてはわかりません。ページに表示されている div を印刷したいだけなので、次のようにPrintElementjQuery プラグインを使用します。

$('a.PrintBtn').click(function () {
 $('div#PrintMe').printElement();
 return false;
});

しかし、それはすべての要素、フォント、方向が乱れたページを返します。どうすれば修正できますか? また、このオーバーロードが表示されます:

$("selector").printElement(
    {
    overrideElementCSS:[
'thisWillBeTheCSSUsed.css',
{ href:'thisWillBeTheCSSUsedAsWell.css',media:'print'}]
    });

しかし、それはどういう意味ですか?css についてはわかりませんが、印刷ページ用に新しい css を作成する必要があるということですか? どうやってやるの?divこれを表示形式として印刷する他の簡単な方法はありますか?

4

1 に答える 1

0

これを行う最も簡単な方法は、print.css CSS ファイルを作成することです。表示したくない項目の表示プロパティを false に設定できます。head タグで print.css ファイルにリンクする場合は、次を使用します。

<link href="Styles/print.css" rel="stylesheet" type="text/css" media="print" />

これにより、ブラウザーは印刷モードのときにのみ CSS を使用するようになります。次のメディア オプションを使用して CSS を複数のファイルに分割することで、さらに洗練されたものにすることができます。

  • media="print" -> 印刷時にのみ使用
  • media="screen" -> 画面に表示する場合にのみ使用
  • media="all" -> 常に適用

ページ/アイテム/オブジェクトの印刷バージョンを取得するために Javascript を使用するクライアントに依存する必要がないため、これはおそらく推奨される方法です。

于 2012-06-25T16:26:37.707 に答える