0

p次のように、にタグを配置しましたtd

<html>
    <head>
        <title></title>
    </head>
    <body>
        <table>
            <tr>
                <td style="font-size: 16px;"><p>Hello</p></td>
            </tr>
        </table>
    </body>
</html>

デフォルトのマージンはpタグから消えました。pなぜこれが当てはまり、デフォルトのタグマージンを取り戻すにはどうすればよいですか?

タグのマージンがベースになっているfont-sizeので、カスケードしないことと関係があると思いましたが、それは役に立ちませんでした。pem

タグに直接マージンを追加したくないのですpが、他に方法はありますか?

4

4 に答える 4

2

ページにDoctype宣言を追加するだけです。

<!DOCTYPE html>
<html>
    <head>
        <title></title>
    </head>
    <body>
        <table>
            <tr>
                <td style="font-size: 16px;"><p>Hello</p></td>
            </tr>
        </table>
    </body>
</html>

これがないと、ページはクァークモードで表示され、特にテーブルに関しては、マージンが予期しない動作をする可能性があります。ここで何が起こっているのか、pあなたがあなたの中にいるときにマージンを失う原因になるのtdかはわかりませんが、それはクァークズモードでのみ発生することを私は知っています。

于 2012-04-11T18:10:54.353 に答える
0

消えることの意味はわかりませんが、p一般的に自分のをターゲットにして、少し埋めることができます。

​td > p
{
  padding:15px;       
}​

必要に応じて、セレクターを厳密にすることができます。

于 2012-04-11T18:01:09.763 に答える
0

それには複数の理由が考えられます。

  1. この問題はIEでのみ発生しますか?クァークズモードで問題が発生する可能性があるため、BoltClockで説明されているようにDoctypeを追加することをお勧めします。
  2. FFでも再現できる場合は、Firebugの[スタイル]タブのサイドパネルで[ユーザーエージェントCSSの表示]を有効にします。次に、ブラウザによって提供されるデフォルトのCSSを上書きしているCSSを確認できます。のようなCSSがあるかもしれません

    table p {
       margin: 0;
    }
    
于 2012-04-11T18:25:50.507 に答える
0

ブラウザは、それぞれの前後に自動的にスペース(マージン)を追加します

エレメント。マージンはCSSで変更できます(マージンプロパティを使用)。

           td p 
              {
               margin:0px;
              }
于 2012-04-11T19:49:12.997 に答える