私は常にマージンを使用して、フローティング div を親 div の正しい位置に移動してきました (ヘッダー div 内のロゴ div など)。これは常に機能しますが、要素の個々の高さをいじる必要があり、それ以外の場合はレイアウトの残りの部分に影響を与えます。
今日、別の方法を見つけました。それは、ロゴの div 位置を相対にすることです。次に、例の top: 20px; を使用します。要素を移動しますが、これはレイアウトに影響を与えないようです。
他の影響がある可能性があることを知らずにこれに適応したくないので、上記の方法のいずれかに共通の欠陥を指摘したり、より良い解決策を提案したりできますか?
// Sample HTML
<div id='header'>
<div id='logo'>
LOGO GOES HERE
</div>
</div>
// Sample CSS
#header {
height: 100px;
}
// Version 1
#logo {
float: left;
margin-top: 20px;
}
// Version 2
#logo {
float: left;
position: relative;
top: 20px;
}