Искажение текста в IE - PullRequest
       8

Искажение текста в IE

2 голосов
/ 31 января 2011

Я использую Shinding Engine, и всякий раз, когда я перемещаю один гаджет для изменения положения, жирный текст внутри этого гаджета искажается.

  1. Before Moving gadget
  2. After moving gadget

Ответы [ 3 ]

5 голосов
/ 31 января 2011

В IE возникает проблема, из-за которой он перестает использовать сглаживание после изменения частей DOM.Есть некоторые обходные пути (Google для них).Я думаю, что IE9 решает проблему.

См. Этот вопрос: jQuery fadeIn оставляет текст не сглаженным в IE7

Некоторые ссылки в этом кажутся мертвыми.1008 * Может помочь одно из этих двух изменений (возможно, вам придется поэкспериментировать с тем, к какому элементу их применить):

myElement.style.filter = '';

или

$(myElement).removeAttr('style');

Другая информация: http://reference.sitepoint.com/css/haslayout http://reference.sitepoint.com/css/filter

2 голосов
/ 31 января 2011

Internet Explorer временно избавляется от сглаживания при выполнении таких задач, как jQuery fade и пример, который вы привели!

1 голос
/ 31 января 2011

Вот пользовательский fadeIn / fadeOut / fadeTo для решения вашей проблемы

(function($) {
    $.fn.customFadeIn = function(speed, callback) {
        $(this).fadeIn(speed, function() {
            if(!$.support.opacity)
                $(this).get(0).style.removeAttribute('filter');
            if(callback != undefined)
                callback();
        });
    };
    $.fn.customFadeOut = function(speed, callback) {
        $(this).fadeOut(speed, function() {
            if(!$.support.opacity)
                $(this).get(0).style.removeAttribute('filter');
            if(callback != undefined)
                callback();
        });
    };
    $.fn.customFadeTo = 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();
        });
    };
})(jQuery);
...