プロが教えるわが家の防犯対策術!

*{margin:0px;padding:0px;}

という風に、スタイルシートで設定をしているのですが、
テーブルに余白を付けようとしても、できません。
どうすればいいのでしょうか?

A 回答 (3件)

*{margin:0px;padding:0px;}を利用しても良いと思いますが(賛否両論)


HTML,CSSを理解しない内は利用しない方が勉強になり、
正しいマークアップも直感で理解できますので、
一旦デフォルトで表示してみて、お好みで個別指定する方が良いかも知れません。
例えば、
html,body{margin:0px;padding:0px;}
を書いてから、後付けでその都度追加するとか。
html,body,h1,h2,ul,ol,li,dl,dt,dd{margin:0px;padding:0px;}
慣れてから使う方が良いかも。
デフォルトのままで、レイアウトやブラウザ間の差異などが困るのなら指定すれば良い。
--------------------------------

テーブルの外側の指定なのか、
内側の指定なのかはわかりませんが、
外側でfloatで意図通りに解釈されていないのでは?
その場合には、色々手法がありますが、tableをdivで囲うのが簡単。

<div style="width:280px; border:red solid;">
<table border="1" style="margin: 20px 0 10px 30px;">
<tr><td>無指定</td><td>無指定</td></tr>
<tr><td style="padding:1em 2em;">
padding指定</td><td>無指定</td></tr>
<tr><td style="line-height:3;">
line-height指定</td><td>無指定</td></tr>
</table>
</div>

幅の解釈も標準か否かで違う。
    • good
    • 0

 ときどき見かけるCSSの指定ですが、本来はブラウザの持つデフォルトのスタイルまで否定してしまうので使うのは感心しません。

全称セレクタは詳細度0ですから、他のセレクタがあれば、継承されるプロパティに関しては上書きされるはずですが、指定してしまうと、他の要素のとき、すべて設定しなおさないとならない。

<style type="text/css">
<!--
html,body{margin:0px;padding:0px;}
/* 以下CSS */
-->
</style>
位にとどめておきましょう。

なお、tableのどの部分に余白をつけたいのかわかりませんが、セル間の余白はpaddingやmarginではなく、cell-spacingです。
    • good
    • 0

それは余白を0にする指定ですよ。


cssの最初に書いておいて、全体のmarginとpaddingをリセットする為に使います。

その後にtableかthかtdに、marginやpaddingを設定しているのに余白が付かないという意味ですか?
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!