技術的にはこれはいずれかの要素が最大高さを超えない限り可能です。しかし、実用的な目的のためには、全体的な身長が限界を超えたらブラウザの動作が変わってしまうので、これは不可能です。
これは実際にはIE11でOK動作するようです:
div{
background: red;
color: white;
height: 10737418px;
}
.blue {
background: blue;
color: white;
}
<div>
Test
</div>
<div class="blue">
Test
</div>
<div>
Test
</div>
<div class="blue">
Test
</div>
全4つのdiv
sが適用されるCSSで表示します。単語「test」を検索すると、単語に4回スクロールします。
Firefoxでは、スクロール可能な高さが最大サイズよりも大きくなりますが、それはその下に何かをレンダリング停止します。
div{
border: 3px solid purple;
height: 17895697px;
}
.blue {
background: blue;
color: white;
}
.red {
background: red;
color: white;
}
<div>
Test
</div>
<div class="blue">
Test2
</div>
<div class="red">
Test3
</div>
最初のボックスが3px紫の境界線を持っています。 Firefoxは下の境界線をレンダリングせず、他の2つは表示されません(div
)。ブラウザーは "test"という単語がページに3回ありますが、 'Find'を使用してもページが他のdiv
にスクロールしません。それだけでそこに座っている。 Chromeの場合
、物事がちょうどおかしく:
div{
border: 3px solid #000000;
background: #CCCCCC;
height: 99999999999999999999999999999999999999px;
}
<div>
Test
</div>
<div>
Test2
</div>
<div>
Test3
</div>
最初div
は、すべての境界線を取得し、div
境界線が後に何度も何度も繰り返し、何らかの理由ではありません2つだけ、他のdiv
sがページ内にあるにもかかわらず、最初のdiv
。 Chromeの「検索」では、「テスト」という言葉はページ内に3回しか存在しませんが、2番目の単語はページの最下部にあると認識します。 「Test」という言葉は2回目または3回目には見えません。
あなたがスクロールするように設定された固定の高さと、オーバーフローと、容器内の背の高い要素を置く場合は、他の奇妙な動作を得ます。
この問題を回避するには、ページの高さが決して限界を超えないようにするしか方法がありません。
静的コンテンツの場合は、複数のページに分割してください。
それはあなたはできる動的なコンテンツだ場合:それはどのくらいの追加ページへのリンク
場所の制限を生成する前に、ページ上に配置されてどのくらいのコンテンツ上の任意の制限を設定
これは興味深いですが、私は質問が何であるか分かりません。 – BSMP
@ BSMP:質問を追加するのを忘れました。今私は質問を追加しました。 –
Chromeの例に10を追加すると、スクロールバーが表示されなくなります。 – BSMP