1
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/1998/REC-html40-19980424/strict.dtd">
<html>
  <head>
    <style type="text/css">
      table {
       border: 0;
       padding: 0; 
       border-collapse: collapse;
      }
      td {padding: 0}
    </style>
  </head>
  <body>
    <table bgcolor="gray" width="100%">
      <tr>
        <td bgcolor="black" height="14px">
          <img src="_images/top_top_line.png" width="800px" height="14px" border="0" alt="">
        </td>
      </tr>
      <tr>
        <td height="14px">
          <img src="_images/top_top_line.png" width="800px" height="14px" alt="">
        </td>
      </tr>
   </table>
  </body>
</html>

最後のオペラと ie8 では、次のように表示されます: http://eta.name/timages/padding.png

OperaでDOCTYPE宣言を削除しても問題ありませんが、何も変わりません。

パディングを正しく削除するにはどうすればよいですか?

例を簡略化しました: http://eta.name/padding.html TD の問題があります。セルの上に 1 ピクセル、下にいくつかのピクセル。これを削除するには?

4

2 に答える 2

1

それはパディングではありません。画像はインライン要素なので、文字のように扱われます。デフォルトでvertical-alignは、画像の下部が a、b、c、d などの文字の下部と一致するように設定されています。これにより、j、g、p、y などの文字に見られるディセンダー用のスペースが下に残されます。

vertical-alignプロパティをいじることはできますが、そもそもレイアウトにテーブルを使用しないでください。

于 2011-02-05T10:18:19.463 に答える
0

私は別の方法でそれにアプローチします。このように各ブラウザーと戦う代わりに、CSS リセットを使用して、すべての要素を完全に制御し、自由にスタイルを設定できるようにします。私が知っている最高のものは、Eric Mayer のhttp://meyerweb.com/eric/tools/css/reset/です。

于 2011-02-05T10:07:35.217 に答える