2017-03-21 12 views
0

私は数十の質問と回答を見て、何時間も検索しましたが、この特定のシナリオに関する情報は見つかりませんでした。親divの子divオーバーフローを作成しますか?

私はその中に子divを持つ親divを持っています。子divには、親divの外部に流出するのに十分なコンテンツが含まれています。なんらかの理由で(私には分かりません)子divはスクロールバーを作成しません。overflow: autoでさえもです。問題の簡単なデモ:

HTML:

<fieldset id='parentDiv'> 
    <div id='childDiv'> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    <p>some text yo</p> 
    </div> 
</fieldset> 

はCSS:

#parentDiv { 
    background: red; 
    height: 200px; 
} 

#childDiv { 
    background: green; 
    overflow: auto; 
} 

JSFiddle

これが起こると、私が作ることができるか、なぜ誰かが私に説明することができますスクロールバーの代わりにスクロールバーを追加するだけです親?助けてくれてありがとう。

EDIT:fieldsetが、問題を見ることが容易になりますという理由だけではなく、親が同様に、昔ながらのdivであれば同じことが起こります。

答えて

3

#parentDiv { 
 
    background: red; 
 
    height: 200px; 
 
    overflow-y: scroll; 
 
} 
 

 
#childDiv { 
 
    background: green; 
 
}
<fieldset id='parentDiv'> 
 
    <div id='childDiv'> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    <p>some text yo</p> 
 
    </div> 
 
</fieldset>

あなたは親にオーバーフローを追加する必要があります。オーバーフロー-Y:スクロール;

+0

私のJSFiddleテストケースで動作するが、実際のアプリケーションではうまくいかない...その理由がわかっているかどうか確認してください。 – Clonkex

+0

Aha!あなたが ' 'を持っているならば、それは親divの高さが設定されているときにはうまくいきますが、それほど長い間私を混乱させたのは、奇妙なことにバグがあるという事実です。そのソリューションは私のために働くように見えますが、単に伝説を削除する必要があります。 – Clonkex

+0

私は、親divがいくつかの残りの垂直スペースを埋めるようにしたいので、親divの親divにフレックスボックスを設定します。 – Clonkex

関連する問題