タイトルが示すように、基本的に何が起こっているかは次のとおりです。
<div id='container' style='display:block; position:absolute; width:auto; height:533px;overflow:hidden;white-space:nowrap;'>
</div>
ユーザーの操作に応じて、いくつかの作業を行います。JSON を要求し、要素を構築し、その要素を「コンテナー」div に追加します。結果は次のようになります。
<div id='container' style='display:block; position:absolute; width:auto; height:533px;overflow:hidden;'>
<img src="A REAL, VALID URL" border='0'/>
<img src="A REAL, VALID URL" border='0'/>
<img src="A REAL, VALID URL" border='0'/>
<img src="A REAL, VALID URL" border='0'/>
<img src="A REAL, VALID URL" border='0'/>
</div>
これが何が起こるかです。これに子が追加され、親の高さを超える場合。親が消える。
私は「hasLayout」とそのすべてのジャズを追求しましたが、何も機能しません。
うまくいくのは、子供たちが同じサイズかそれよりも小さい場合ですが、私が達成しようとしていることの性質上、これは望ましくありません。また、子供たちが小さくなることを保証することもできません.
height:auto
機能しませんが、最大の子よりも大きな値を設定するとこれが修正されますが、レイアウトが歪んでしまいます
前もって感謝します。
編集: 画像は、JSON と遅延キューの組み合わせを介して読み込まれます。それらは、コンテナ要素に追加する前にロードされることが保証されています。
基本的 :
var img = new Image();
img.onload = function () { theContainer.appendChild(this);};
img.src = someURL;
すべてのクロムとFFで正常に動作します
edit2:「コンテナ」オブジェクト自体が本体に追加される前と後の両方に画像を追加しようとしました。どちらも期待される結果を生成しません。
編集 3: * IE7 と IE9 は上記のように動作しません。これはIE 8専用です*