0

私が働いているビジネスでは、HTML 形式でレポートを生成し、クライアントはこれらのレポートを印刷することがよくあります。私たちが遭遇した問題は、クライアントが印刷するときに、印刷ビューの改ページの 1 ~ 2 ピクセル前に内側のテーブルの 1 つが開始されることがあるということです。これにより、テーブルが消えますが、スペースが占有されます。

<HTML>
  <HEAD>
    <META http-equiv="Content-Type" content="text/html; charset=utf-8">
    <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>test</title>
    <style type="text/css">
      td { border:1px solid black;}
      table {border-collapse:collapse;}
    </style>
  </HEAD>
  <BODY>
    <TABLE class="main">
      <TR>
        <TD>
          <TABLE class="second">
            <TR>
              <TD style="border-top:824px solid-black">1</TD>
            </TR>
            <TR>
              <TD>1_1</TD>
            </TR>
            <TR>
              <TD>1_2</TD>
            </TR>
            <TR>
              <TD>1_3</TD>
            </TR>
          </TABLE>
        </TD>
      </TR>
      <TR>
        <TD>
          <TABLE class="second">
            <TR>
                  <TD>2</TD>
            </TR>
            <TR>
              <TD>2_1</TD>
            </TR>
            <TR>
              <TD>2_2</TD>
            </TR>
            <TR>
              <TD>2_3</TD>
            </TR>
          </TABLE>
        </TD>
      </TR>
      <TR>
        <TD>
          <TABLE class="second">
            <TR>
              <TD>3</TD>
            </TR>
            <TR>
              <TD>3_1</TD>
            </TR>
            <TR>
              <TD>3_2</TD>
            </TR>
            <TR>
              <TD>3_3</TD>
            </TR>
          </TABLE>
        </TD>
      </TR>
    </TABLE>
  </BODY>
</HTML>

上記のコードはエラーを再現するはずですが、境界線にパディングを追加して、2 番目のテーブルを改ページの直前に移動する必要がある場合があります。

改ページ、パディング、ボーダーの折りたたみ、ボーダーの折りたたみなしを試しました。セルの境界線を除いてスタイル設定のない 2 つのテーブルだけの場合、エラーが持続するように見えます。これはかなり大きな欠陥のように見えますが、私はそれについて何も見つけることができませんでした。

これは IE の問題ですか、それともこの問題を回避するために何かできることはありますか?

編集 可能な限り必要最小限 (TD 要素の境界線のみ) で試してみましたが、同じ問題が発生していました。

問題を解決することはできませんでしたが、回避策として、外側のテーブルのセルを 1 つだけ使用し、内側のテーブルをそれぞれ内側に配置しました。これにより、改ページの近くでテーブルが消えるのを防ぎました。

4

1 に答える 1

0

ネストされたテーブル レイアウトを使用するビジネス アプリケーションでは、IE7 と IE8 でまったく同じ問題に直面しました。影響を受けるサンプルのテスト結果によると、Internet Explorer 11 にはこの問題はありません。

これは IE のバグであり、マイクロソフト テクニカル サポートによると IE 10 より前のバージョンに存在し、多くの PDF プリンターで使用される Print-to-PDF 機能にも反映されており、これが最初にバグを特定した方法です。

残念ながら、私が述べたことの証拠を提供することはできません。IE11 をチェックインして、問題が解決したかどうかを確認してください。もう 1 つの方法は、まだブラウザーを切り替えたくない場合に、div ベースのレイアウトでテストすることです。

于 2015-03-25T11:58:33.577 に答える