良い一日 :)
固定サイズの div で、不透明度と高さの両方で jQuery の animate() を使用しています。
Firefox ではすべて正常に動作しますが、IE8 では (互換モードの有無にかかわらず、IE6 と IE7 でも同じ動作になると想定しています)、アニメーションは表示されますが、div の高さが 0% に達すると、 div の高さは、その div 内のテキストの高さに調整されます。
私がすぐに最初にしたことは、オーバーフローを非表示に設定することでしたが、それでも同じ動作が得られます。
次の関数を使用して、高さ/不透明度をゆっくりと切り替えています。
function OpacityFadeToggle(e_trigger, e_element, speed)
{
$(e_trigger).toggle(
function() {
$(e_element).animate({
opacity: 0.0,
height: "0px"
}, speed);
},
function() {
$(e_element).animate({
opacity: 1.0,
height: "500px"
}, speed);
}
);
}
$(function() {
OpacityFadeToggle("a#a2", "div#b1", 1000);
});
私の「b1」divのスタイルは次のとおりです。
div#b1 {
color: #ffffff;
background-color: #000000;
overflow: hidden;
width: 600px;
height: 500px;
padding: 0px;
margin: 0px;
display: block;
}
実際の例を見たい場合は、ここに一時的にページを設定しました:クリックしてください!
この問題に関するヘルプは大歓迎です。