カテゴリ: 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でした)。
残念ながら、根本的な解決策は見つかりませんでした…。
ユーザビリティーを考えれば、表の場合、スクロールさせないよう、
ページャを入れた方が使い勝手がいいでしょう。
コメントを残す