2

<div>スクリプトによって子が追加された があります。これらの子要素は、PHP スクリプトによって自動的に追加され、position:absolute. 親の高さを増やすために要素を追加できる<div>スタイルを親に与えようとしました。唯一の問題は、これを行うと高さが増加しないことです。これを修正するために私ができることを誰かが知っていますか?min-height:400px<div>

編集:position:relative要素の配置に使用できません。を可能にするソリューションはありますかposition:absolute

4

2 に答える 2

4

はい、絶対位置を使用できます(yeee♥!)

LIVE DEMO TEST CASE

単に行うことによって:

$(this).height( this.scrollHeight );

または純粋な JS の場合:

this.style.height = this.scrollHeight ;

これを要素の CSS に追加します。

overflow:hidden;
overflow-y:auto;

編集:

デモは、IE10、Firefox、Chrome、Safari、および Opera で正常にテストされました。

ここでの重要な点は、x 軸または y 軸 (サイズが必要な次元) のオーバーフロー値をauto、既定値の ではなく に設定することですvisible。次に、 HTML DOM オブジェクトでscrollWidthorscrollHeightプロパティを使用して、絶対位置の子孫を含む要素のフル サイズを取得できます。

奇妙に思えるかもしれませんが、これはoverflow:hiddenコンテナの設定が絶対位置の子孫をクリップするという事実と完全に一致しています。どうやら、 を持つ要素はposition:absolute、私たちが常に言われてきたほど「流れから外れている」わけではありません :)

于 2013-05-04T14:32:19.983 に答える
0

position: absoluteそのように配置されたものは通常のレンダリングフローから引き出されるため、これを使用しないでください。これにより、親はその含有量が実際には非常に高いことに気付かない. position: relative子 div に使用します。このようにして、親は自動的に成長します。

于 2013-05-04T14:26:50.517 に答える