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

Mac OS Xで自サイトを制作しています。
Windows XPもあるので、確認しているのですが、その限りではおかしい所は見当たりません。

ところが、他の方のWindowsで見た時に、marginが効かずに、ヘーダーのdivとインナーのdivがぴったりとくっついてしまっている部分があります。

いろんなWindowsで見て、全てIE8で確認しているのですが、機種によって(?)離れたりくっついたりと違いが出ます。
効くものは効くし、効かないものは効かないという感じです。

ブラウザの種類やバージョンの違いでこうなるのはまだ分かるのですが、同じIE8で見ているのにこのような違いが出るのはなぜなのでしょうか?
また、この問題を解消して、ちゃんとスペースが空くようにするには、どこを変えると良いのでしょうか?

自分のWindows環境ではちゃんと表示されているので治すに治せません。
ご教示お願いします。

body {
margin: 0;
}

#wrap {
width:802px;
margin:0 auto;
}

#header {
padding:16px;
}

#inner {
margin:16px 0;
padding:0 8px;
}

#footer {
padding:16px;
}

背景色指定など、直接関係しないものは省略しています。

<body>
<div id="wrap">
<div id="header">ヘッダー部分</div>
<div id="inner">インナー(サイトのメイン)部分</div>
<div id="footer">フッター部分</div>
</div>
</body>

inner側でmarginを上下に設定しているのが問題なのでしょうか。
しかし、それでもinnerとfooterの間はちゃんと16px分空いているのです。
なのに、headerとinner側に限って空いたりくっついたりするというのが分かりません。

「同じIE8なのに機種によってmargin」の質問画像

A 回答 (1件)

IEは、互換モードと標準モード(及び中間のものも)がありますが、IE8ではデフォルトのモードを切り替えることができます。


 それを無効にして、標準モードで動作させるため
<meta http-equiv="X-UA-Compatible" content="IE=8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
 を入れておくと良いです。

なお、そのような問題を避けるために

<body>
<div class="header">ヘッダー部分</div>
<div class="section">インナー(サイトのメイン)部分</div>
<div class="footer">フッター部分</div>
</div>
</body>

に対して、
html,body{margin: 0;padding:0;}
div.header,div.section,div.footer{width:80%;margin:0 auto;}
div.header>*,div.section>*{margin:16px;}
div.section{margin:16px 0;}
div.section>*{margin:0 8px;}
と、paddingを使わないことで互換モードと標準モードの差をなくすことができます。

サンプルは、文書構造を示すようにHTML5の新しい要素名( http://standards.mitsue.co.jp/resources/w3c/TR/h … )にしてあります
 idは、詳細度が高く実際にスタイルシートを利用するときに難しくなります。できればclass名で・・
 外枠は要らないのではないかと・・・。必要なら<div class="article"> HTML5なら<article>で囲む。wrapとかinnerなんて書かない。<font color="red">がダメだから<span class="red">とするのと大差ない。<strong>としておいて、スタイルシートでstrong{color:red;}とすべきなのと同じです。
    • good
    • 0
この回答へのお礼

なるほど、互換モード、標準モードというのがあるのですね。
このページは、CSSをこれから覚えようとしていた時に、よく分からないまま見よう見まねで組んだものがずっとそのままになっていました。
独学で自分のやり方が定着してしまったのも、良くなかったと思います。

より適切になるように、ORUKA1951さんの回答を参考にして、これから変えて行きたいと思います。
答えて頂いてありがとうございます。すっきりしました。

お礼日時:2012/02/18 20:58

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