アプリ版:「スタンプのみでお礼する」機能のリリースについて

<style type="text/css">
*{margin:0px;padding:0px;}
</style>

ホームページで上記のようなソースを見かけたのですが、これはどういう意味なのでしょうか?
試しに新規ページにこのコードを記述してbody内にtableを作ってみたのですが、tableに記述したcellpaddingが
数値をいろいろ変えても動作しません。
この*{margin:0px;padding:0px;}という記述をすることによる意図は何なのでしょうか?
宜しくお願いします。

A 回答 (2件)

*はトランプのジョーカーみたいなものです。

何にでも当てはまりますカードと思うといいです。

margin:0px;padding:0px;
これはマージンやパッディングを0にするってことです
何もしないで文字を入れると、ブラウザによってはぴったり上にくっつかないとか、くっつくとかいろいろ初期値が違うので、どのブラウザでも同じようにしたいときに、一律これだけと指示することが多いです。

●cellpaddingが聞かない理由と聞かせる方法
*はなんでもですが、より詳しい記述があれば、そちらを優先させるというルールがあります。詳細度といいます。同じ詳細度なら、後から書いた方が優先されます。

*(何でも)より見出しや段落、テーブルと具体的な場所に対する指示の方が優先されます。
そして外部よりヘッダ。ヘッダよりインラインの方が優先度が高くなります。
そして、タグによってはどこに記述しても*より弱いタグもあります。
今回のcellpaddingやfontがそれにあたります。誤解を恐れず大雑把に説明するとそんな感じになります。

cellpaddingを使う代わりに同じ効果ならcellpaddingを記載した場所に「style="padding:10px;"」と入れてください。インラインといいます。このタグを閉じる場所まで有効です。
もし、そのページ全体の表に入れたいなら、ヘッダ部分(<head></head>の間)に「<style>td{padding:10px;}</style>」と入れてください。tdの当てはまる場所すべてに効きます。サイト全体に聞かせたいなら外部にします。cssでは単位は0以外省略できません。

つまり外部に原則を記述、インラインに1回だけの例外のものを記述ってやり方もできるので、状況に応じて使い分けされるといいです。
    • good
    • 3

marginとpaddingのデフォルト値がブラウザによって違うので、それを統一するための記述です。


*はCSSで最も優先度の低いセレクタなので、他の箇所でmargin, paddingを指定すれば容易に打ち消せます。

td { padding:10px; }
等やってみれば、分かると思います。
    • good
    • 1

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