IE6、IE7 で縦に長い要素があるページを印刷すると1ページ目しか印刷されない

カテゴリ: IE

記事投稿日: 2014年8月5日



※IE6には幾つかバージョンがありますので、
この記事の内容が再現しないことも考えられます。

IE6、I7には要素が長すぎたり、ブロック要素が
ページ間にまたがると、1ページ目しか
印刷されないというバグがあるようです。

区切りの良いところで、たとえばAとBという要素があり、
Bが2ページ目にまたがらないように、
AとBの間に改ページを行うCSSを
挿入するのが対処法となります。

CSSは「page-break-after: always;」(直前で改ページを行う)を
使います。

ただ、表のように内部の要素が連続している場合、
途中で改ページを行いたいと思っても、うまくいかないようです。

試しに表の行を一定分出力したら、次行に改ページ処理を行う
CSSを挿入する処理を作ってみたのですが、IE6では無効でした
(FireFox、Chrome、IE8ではOKでした)。

残念ながら、根本的な解決策は見つかりませんでした…。

ユーザビリティーを考えれば、表の場合、スクロールさせないよう、
ページャを入れた方が使い勝手がいいでしょう。








コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA




トップに戻る