bodyのセンタリングとwidthの指定について
スタイルシートで以下のように指定しbodyをセンタリングします。
-----CCS-----
html{text-align:center;}
html,body{height:100%;}
body{
margin:0px auto;
width:580px;
text-align:left;
}
-----HTML4.01 strict-----
<html>
:
<body>
<h1>・・・</h1>
<ul>・・・</ul>
<h2>・・・</h2>
<p>・・・
<h2>・・・</h2>
<p>・・・
----------
これをwin IE6で確認すると、h2以下の内容がbodyの外(画面100%の直下)にはみ出します。
win Safari5でも同様です。
IE6では、body直下にコンテナとしてdivを置きwidthを指定してやれば解決します。
Safari5ではbody直下にコンテナとしてdivを置くだけで解決します。
なぜこのような現象が起きるのでしょうか?
htmlにtext-alignを指定したりbodyを直接センタリングしているので不安は少々あるのですが…。
h2以下が下がる原因としてh1とulとの相違点(margin-topの指定や文字センタリング)を確認し修正してみたりしましたが解決はしませんでした。
なお、フロートや固定などの表示方法は指定していません。
原因を推察できる方、ぜひ回答お願いいたします。
こういった指定をしていないか、など上記の記述が足りなければご指摘ください。
お礼
なるほど。マージンのことではないのですが、ブロックレベル要素となので必ず改行が入るということは理解できました。 ありがとうございます。