4

次のように、絶対位置の辞書用語を別の用語に置き換えています。

jQuery('#replaceme').fadeOut(150, function() { jQuery('#withme').fadeIn(150); });

これは、IE8 を除くすべてのブラウザーで見た目も機能も優れた非常に単純なコードです。IE8 では、fadeOut() が機能している間、テキスト ブロック全体が 2 ~ 3 ピクセル上にシフトし、次に、fadeIn() によって 2 ~ 3 ピクセル下に戻ります。

これを引き起こしている可能性のあるアイデアはありますか?これが起こらないようにする方法を知っている人はいますか?

ところで: jQuery 1.3.1 でも 1.3.2 と同じ結果が得られます。私の厳密な XHTML と CSS はすべて検証されます。

4

1 に答える 1

1

インライン要素からインラインブロックまたはブロック要素に変更されていますか?

ie8 開発者ツールを使用して、要素の表示プロパティを に変更してみてdisplay:inline-block、問題が発生するかどうかを確認してください。

編集:コメントへの応答

発生する可能性が高いのは、要素が予想されるドキュメント フローから取り出されていることです (本文に追加されるか、新しい親が挿入され、これがそれに追加されるなど)。この場合、通常適用される CSS ルールは適用されません。 .

firebug を使用して、この要素に適用されるすべての CSS ルールを特定し、この要素 ID #replaceme をセレクターのリストに追加して、要素が期待どおりにスタイルされることを確認してください。例えば

dt > dd.def { }

になる

dt > dd.def, #replaceme { }
于 2009-06-03T00:05:57.390 に答える