次のコードがあります。
<!DOCTYPE html>
<html>
<head>
<style>
img
{
position:absolute;
right:50px;
}
</style>
</head>
<body>
<h1>This is a heading</h1>
<img src="logocss.gif" width="95" height="84" />
</body>
</html>
http://www.w3schools.com/cssref/tryit.asp?filename=trycss_position_rightから
h1 のスタイルを次のように変更すると: h1 { position:absolute; 右:50px; h1 と img の両方がオーバーラップします。
ここで、img や h1 の最上位については言及しませんでした。したがって、h1 にスタイルがなかった最初のケースでは、img は h1 をそのままにし、h1 の後の次の使用可能なスペースを占有し、右側 (50 ピクセル離れて) に配置されました。しかし、h1 が 50px 離れている (絶対配置で) と述べたとき、img と h1 の両方が重なりました。最上位について言及しなかったので、なぜ img は h1 だけを残して (オーバーラップするのではなく) フォローしないのでしょうか? トップ位置をあいまいに指定したままにする絶対配置を使用していることを理解していますが、なぜ img が top:0 位置を占める必要があると自動的に想定するのですか? h1 が top:0 の位置を占めていれば、最初の要素なので問題ありません。ただし、img は h1 のスペースを尊重する必要があります。
助けてくれてありがとう。