3

動的な高さの div があります。この div は position: fixed である必要があります。次の div は、最初の div が終了する場所から垂直方向に開始する必要があります。

その理由は、div が一番上にあるヘッダーであるためです。ただし、コンテンツはヘッダーの直後に開始する必要があります。ページがスクロールされると、ヘッダーは固定されたままになり、残りは通常どおりスクロールされます。コンテンツのマージントップを設定すると、通常はうまくいきますが、このタイプのヘッダーには動的な高さがあります。何か案は?

編集:私が考えることができる1つの解決策は、ヘッダーを2回印刷し、2番目を位置:相対および可視性:非表示に設定することです。それはうまくいくはずですが、それはひどい解決策のようです。

4

3 に答える 3

1

固定および絶対配置された要素は、通常のページフローの外側にあります。CSSだけでは、他のコンテンツをそれらに関連して、またはそれらの外部に設定することはできません。

誰かがしたい場合に備えて、これがフィドルです、えーと、フィドル。

http://jsfiddle.net/fX7cH/1/

<div id="page">
  <div id="header"></div>
  <div id="content"></div>
</div>
于 2013-01-16T21:21:01.050 に答える
0

この特定のケースの解決策は、それぞれのスタイルシート (デスクトップ、モバイル) のコンテンツ div に異なる margin-top 値を定義することでした。ただし、これは一般的な解決策ではありません。問題は、モバイル レイアウトのメニューに各リスト項目がブロック表示されていたことです。そのため、アイテムの数に応じて、コンテンツ div のマージントップを手動で調整する必要がありました。正確にはエレガントではありませんが、私にとってはうまくいきます。

于 2013-01-17T19:51:52.643 に答える