2

親divに含まれるdivの2つの列(左と右)があります。左または右のdivの高さが拡張されたときに、親のdivの高さが自動的に調整されるようにします。私が今抱えている問題は、左が拡張すると親divの高さが拡張するだけで、右側では機能しないことです。私はすべてのdivに対してheight:autoを持っています。

誰かが解決策を持っていますか?

4

3 に答える 3

0

div を並べて配置している可能性があります。そうすることで、「これらの div をフローから削除」します。つまり、親はそれらをコンテンツとして取りません。

overflow: hidden親に与えるか、明確なdivを追加することで、この効果を「バイパス」できます。

オーバーフローのある例: http://jsfiddle.net/BramVanroy/LJTGh/

重要な CSS:

#wrapper {
    height: auto;
    width: 77%;
    margin: 20px auto;
    overflow: hidden; /*THIS IS IMPORTANT */
    border: 1px solid;
}

また

クリア付きの例: http://jsfiddle.net/BramVanroy/LJTGh/1/

重要な CSS:

.clear {clear: both;}

最初のオプションでは 1 行多くの CSS が必要であり、2 つ目のオプションでは 1 行多くの HTML と 1 行多くの CSS が必要です。

于 2012-11-10T11:53:52.427 に答える
0

floatたとえば、これを行うことができます

<div class="parent" style="float:left">
   <div class="child" style="float:left"></div>
    <div class="child" style="float:left"></div>


</div>
于 2012-11-10T11:37:14.850 に答える
0

おそらくfloat、右側の div を右側に移動するために使用しています。float は親の高さを自動的に調整しません。parent の末尾の直前に次のコードを追加する必要がありますdiv

<br style="clear:both;" />

これにより、同じレベルのすべてのフロートが終了します。

于 2012-11-10T11:53:36.820 に答える