5

私はフェードアウトしていて、divで:

$('.formErrors').fadeTo('fast', 0); 
$('.formErrors').fadeTo('slow', 1);

しかし、IE 8でこれを行うと、CSSのこのビットのように見えます。

.formErrors li { font-weight: bold; }

テキストがかなり歪んで戻ってきています:(下の画像)

http://www.newmania.com/images/error.jpg

これを適用するHTMLは次のとおりです。

<div class="formErrors">
There are errors in your submission. Please fix the following and try again:
<ul><li>Action is empty</li></ul>
</div>

Firefoxでは正常に動作します。何かアイデアはありますか?

4

4 に答える 4

10

画像がまだない場合、一般的な解決策は背景色を定義することです:
http://jsbin.com/axapa

.formErrors {background-color:white;}

別のオプションはfadeInandを使用することfadeOutです: アニメーションは醜いまでですが、少なくともうまくいきます: http://jsbin.com/aboxa

于 2009-12-08T09:44:56.980 に答える
2
jQuery.fn.fadeIn = function(speed, callback) { 
return this.animate({opacity: 'show'}, speed, function() { 
    if (jQuery.browser.msie)  
        this.style.removeAttribute('filter');  
    if (jQuery.isFunction(callback)) 
        callback();  
});
};
jQuery.fn.fadeOut = function(speed, callback) { 
return this.animate({opacity: 'hide'}, speed, function() { 
    if (jQuery.browser.msie)  
        this.style.removeAttribute('filter');  
    if (jQuery.isFunction(callback)) 
        callback();  
});
};
jQuery.fn.fadeTo = function(speed,to,callback) { 
return this.animate({opacity: to}, speed, function() { 
    if (to == 1 && jQuery.browser.msie)  
        this.style.removeAttribute('filter');  
    if (jQuery.isFunction(callback)) 
        callback();  
});
};

このコードは、IE に固有の JQuery の一部のフェード プロパティをオーバーライドします。ここで、IEでfadeToを正常に機能させることができました:https://app.tekstme.com/signup/

于 2010-12-08T19:35:55.757 に答える
2

このスレッドが非常に古いことは知っていますが、簡単な解決策を見つけました。背景を透明にする必要があるテキストの背後に複雑な背景があったため、背景の使用は私の場合には適用できませんでした。とにかく、これはかなりうまく機能していることがわかりました(cssコードを追加する必要があります):

.formErrors{position:relative;}
于 2011-12-01T16:55:15.503 に答える
1

<!DOCTYPE html> を使用すると、IE8 でこの問題が修正されました。フェード中はテキストがまだブロック状に見えますが、その後は滑らかになります

于 2011-12-02T06:03:18.260 に答える