- ベストアンサー
リセットCSSの一般的な方法
Webサイトを作成しているのですが、ブラウザごとの差異を無くすリセットCSSというのを知りました。 調べてみたら、いくつか方法があるようですが、一般的にどのような方法でリセットCSSを行えば良いのでしょうか? Webサイトのデザインによって、リセットCSSの方法は変えたりするものなのでしょうか? また、私は、まだブラウザごとで、どのセレクタとプロパティで差異が出るのか把握しておりませんが、リセットCSSをする場合、必ずリセットするべきセレクタとプロパティはありますか? dic、span、pのmarginやpaddingなど、他にありますか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
元々は、オーサリングツールのテンプレートなどで利用されてきた方法で、たった一行 *{margin:0;padding:0;font-size:12px;font-weight:normal;****} などで済ます方法が一般的でしょう。*全称セレクタの詳細度は0です。 しかし、これには欠点があって、すべての要素についてその要素が登場するたびに指定しなおさなければならない欠点があります。そのため、しばしばスタイルシートが長大になります。 私は、リセットCSSは基本的に使いません。 div(dicではありません)、spanは 【引用】____________ここから id属性及び class属性と併用することで、文書に構造を付加するための一般機構を提供する。  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ここまで[The global structure of an HTML document (ja)( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/struct/global.html#h-7.5.4 )]より ですので、必ずidなり、class名が付くはずですから、リセットの必要はないはずです。すなわち div.section{width:70%;min-width:64px;max-width:800px;margin:0 auto;} のように指定する。 pについては、 p{margin:0;line-height:1.6em;text-indent:1em;} と固定スタイルシートで指定しています。
その他の回答 (1)
- DrFell
- ベストアンサー率55% (305/551)
オーサリングソフトに関係なく、一昔前は*{margin~}が使われましたが、一律ですべてをリセットすると問題があることが知られるようになり、色々と変化しています。今も進化中です。 で、ちょうど昨日人気のcssリセットのまとめ記事が公開されていましたので、紹介します。 ●[CSS]2012年最も人気のあったCSSリセットとどれを使えばいいかの指針、と上手に使うポイント http://coliss.com/articles/build-websites/operation/css/2012-most-common-css-reset.html 自分の都合にあわせて、選ぶ、選んだ中から削るなどカスタマイズしてください。
お礼
ありがとうございます!! 英文なので難しいですが、頭に入れておきます!!
お礼
ありがとうございます! 例えば、次のようにしてclassを指定したとします。 div.test{margin:2;} この場合、マージンは上下左右が2になるということだと思いますが、仮にIE9だと他のブラウザに比べてマージンが+1で設定されているとしても、IE9でも他のブラウザでも、同じようにレンダリングされるのですか? 他のブラウザではマージンは2でレンダリングされるが、IE9だとマージンは3でレンダリングされるということではないのでしょうか? リセットCSSを始めに記述することによって、そのあとidやclassでマージンなどを設定しても、全てのブラウザで同じようにレンダリングされるかと思っていました。 しかし、結局、リセットCSSをしなくても、idやclassなどをつけてセレクタごとに属性と値を入力すれば、ブラウザごとの差異は無くなるってことなのでしょうか?
補足
ありがとうございます! 例えば、次のようにしてclassを指定したとします。 div.test{margin:2;} この場合、マージンは上下左右が2になるということだと思いますが、仮にIE9だと他のブラウザに比べてマージンが+1で設定されているとしても、IE9でも他のブラウザでも、同じようにレンダリングされるのですか? 他のブラウザではマージンは2でレンダリングされるが、IE9だとマージンは3でレンダリングされるということではないのでしょうか? リセットCSSを始めに記述することによって、そのあとidやclassでマージンなどを設定しても、全てのブラウザで同じようにレンダリングされるかと思っていました。 しかし、結局、リセットCSSをしなくても、idやclassなどをつけてセレクタごとに属性と値を入力すれば、ブラウザごとの差異は無くなるってことなのでしょうか?