私はただ印刷可能なウェブサイトで働いています。
私が直面している問題の1つは、画面に正しく表示されているものの、一部の表の境界線が印刷されないことです。
FirefoxとChromeの両方を試しました。どちらも画面上にすべての表の境界線を表示しますが、印刷時には境界線の一部を省略します。
それらを印刷するには何をする必要がありますか?
印刷媒体のスタイルシート を作成することを検討してください。これは、セルの間隔と背景色の代わりにテーブルの境界線プロパティを利用します。
table {
border:solid #000 !important;
border-width:1px 0 0 1px !important;
}
th, td {
border:solid #000 !important;
border-width:0 1px 1px 0 !important;
}
印刷スタイルシート、または既存のスタイルシート内の@mediaセクションの印刷を指定しましたか?
デフォルトでは、スタイルシートは画面上で正常に機能します(発見したとおり)。ただし、印刷CSSスタイルシートを明示的に指定しない限り、ページを印刷するときに、ブラウザーのデフォルトスタイル(通常は15pt Times New Romanなど)にデフォルト設定されます。
解決策1:2番目の印刷スタイルシートを追加するHTMLヘッドに以下の両方のタグを含めます。
<link rel="stylesheet" type="text/css" href="screenstyles.css" media="screen" /> <link rel="stylesheet" type="text/css" href="printstyles.css" media="print" />
次に、必要なフォーマットスタイルをscreenstyles.cssからprintstyles.cssにコピーします(または、両方のをスクリーンスタイルシートにリンクします)。
解決策2:スタイルシートは1つのみですが、@ mediaが印刷されています