固定ヘッダーとメインdivにパーセンテージの値を与えると、何か変なことが起こります。相対的な高さのマージンが不揃いの固定ヘッダー
ヘッダーの高さの値として50px
を使用し、メインエリアの余白として50px
を使用すると、すべて正常に動作します。
しかし、私はこれらの値は10%
になりたいときに、ヘッダーとメインの間に矛盾の距離があります:
header {
position: fixed;
display: block;
top: 0px;
left: 0px;
right: 0px;
height: 10%;
background-color: green;
}
main {
margin-top: 10%;
background-color: blue;
}
<header>
My Header
</header>
<main>
Mainarea here!
</main>
jsfiddle:https://jsfiddle.net/azizn/L7sroo4m/
は誰かに説明を持っていますこのため?あなたのhtmlとあなたの体のタグは、特定の高さと幅を持っていない
マージントップ/ボトムの例がある
X%親の幅を参照してください参照https://www.w3.org/TR /CSS21/box.html#margin-propertiesを追加して、折りたたみ余白効果を追加した場合、最初は混乱している可能性があります。 –
私はまだ混乱しています。要素は同じ親を持ちます。これは、パーセンテージ値が同じ絶対値に影響することを意味します。 –
高さ:10%、余白:10%は同じではありません。ウィンドウのサイズを変更し、マージン値の10%の更新を参照してください。要素は絶対位置または固定位置に設定されていますが、ここで使うことができます: 'body:before {content: ''; height:10vh; display:block;}'平均余白:10%;メインのマージントップ:10vh;働くでしょう。 https://jsfiddle.net/L7sroo4m/1/ –