画面の上部に固定ヘッダーがあり、ヘッダーの後に要素を配置しようとすると、その要素はヘッダーの高さを無視してしまいます。
HTML
<header></header>
<p>Empty text</p>
CSS
header {
display: block;
height: 100px;
width: 100%;
background: #eee;
position: fixed;
top: 0;
z-index: 100;
}
これに似た問題の解決策をStackOverflowやその他の場所で検索しましたが、役に立ちませんでした(特定の問題を言語化するのに苦労したことが一因です)。クリアフィックスを試してみた
<header></header>
<div style="clear:both"></div>
<p>Empty text</p>
しかし、それでもうまくいきません。margin-top: 100px
また、要素に aを追加しようとしましたp
が、将来ヘッダーの高さを変更し、ヘッダーに続くすべての要素または追加する可能性のある他の要素に対してこれを行う必要がある場合の悪い習慣を考えますposition: fixed
またはposition: absolute
。_ さらに、ヘッダーは、さまざまなサイズの画面に応じて流動的な高さになります。
現在、私はワイヤーフレームを作成しているので、可能であれば JavaScript を使用せず、単純な CSS のみを使用したいと考えています。そうでない場合は、最小限のバニラ JavaScript で十分です。これは Web デザインの根本的な問題であり、私は常にこれに反論してきましたが、これmargin-top
に対抗するためのよりクリーンでより良い方法を誰かが知っているかどうか疑問に思っています。
また、これは少なくともある程度クロスブラウザである必要があります。繰り返しますが、ワイヤーフレームのみです。私のワイヤーフレームは、基本的な CSS をサポートするあらゆるもので機能するはずです。
これが重複した質問である場合は申し訳ありませんが、そうであると確信していますが、私の状況に完全に一致するものは見つかりませんでした. どんな助けでも大歓迎です!