IE7 vs. DXTransform или Как баги становятся фичами

    Информация к размышлению.
    Возвращаясь к теме рендеринга текста в браузерах, захотелось мне слегка затронуть тему проблем IE7 в сочетании с DXTransform-фильтрами; самое распространенное, с чем приходится иногда сталкиваться — filter:opacity(), например. (перевод мой)

    Снова привет, это Питер Гуревич, я менеджер проекта IE по части ClearType (помимо того, о чем можно прочесть у меня в блоге). Сегодня я хочу обратить ваше внимание на вопрос о взаимодействии DXTransforms и ClearType, а так же рассказать, что мы сделали для повышения читаемости текста в IE.

    Во время наших тестов мы заметили, что DXTransform иногда применяется к элементам, содержащим текст (который теперь рендерится с помощью ClearType). Так же, как заметили наши пользователи, сглаженный ClearType-ом текст смотрится слишком размыто — к несчастью, эти две технологии плохо сочетаются. Это происходит из-за того, что преобразования, используемые в DXTransform, не берут во внимание пространственную природу ClearType.

    Чтобы обеспечить хорошую читаемость текста в IE, в релиз-кандитате мы решили отключить ClearType для всех элементов, к которым применяется DXTransform. Мы будем отрисовывать текст в этих элементах несглаженным, чтобы он лучше читался. Остальноей текст на странице будет выведен через ClearType. Это объясняет, почему часть (или чуть больше) сайтов будут показывать текст несглаженным.

    Дальше в комментариях отзывы. Страдает разработчик:
    Эту проблему можно наблюдать и в других случаях (жирный текст или PNG с полупрозрачностью, например). У них у всех есть одно и то же решение: надо установить цвет фона. До тех пор, пока это не приемлимое решение на все времена, это по крайней мере то, чем пользуются разработчики, когда им приходится считаться с IE для того, чтобы создать страницу, более-менее похожую на необходимую. А с этими изменениями, такое решение перестает быть хорошим. Это значит, что мы можем либо иметь красивый текст, либо прозрачность, но все сразу получить не выйдет. Это неприемлимо. И до тех пор, пока проблема не будет решена везде, у нас получается еще один костыль в добавок ко всем прочим, которые создают очень много проблем при поддержке IE. Либо чините, либо оставьте как есть, но не надо создавайте очередную неожиданность, которую никак нельзя контролировать. Можно ведь ввести например фильтр ("-ms-text-smoothing" или что-то вроде того). Можете даже установить его дефолтное значение в ‘none’, если очень уж надо. Но это по крайней мере даст возможность разработчикам исправить баг без потери функциональности.

    Страдает обычный юзер:
    Очень жаль, что MS просто не сделала ОПЦИЮ, которая включала или отключала это. Я предпочитаю, чтобы она была включена везде, на всех сайтах, без разницы, размыт текст, или нет.

    И наконец, самое ужасное:
    Судя по отзывам: 185407, в IE7 это так и не починят. Они почти закончили, и RC1, похоже, станет тем, что мы в итоге увидим. Я очень расстроен, что они решили отказаться от ClearType. Никогда не видел таких искажений, лучше бы оставили ClearType везде включенным, либо везде выключенным.

    Ну и для примера, как ломается сайт, если у разработчика кривые руки злоупотреблять этими самыми фильтрами.
    Share post

    Similar posts

    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 7

      +4
      IE8?
      • UFO just landed and posted this here
        • UFO just landed and posted this here
            +2
            Зато png как обычно.
            Free Image Hosting at www.ImageShack.us
          +13
          Вместо того, чтобы починить отображение текста при использовании фильтров, они придумывают как это обойти. В этом вест Майкросовт.
            +3
            Так и есть. Они убрали Gopher и XBM не из-за того, что первый устарел, а второй мало где используется, а из-за того, что в реализации были баги и они предпочли их не чинить. К сожалению, упомянутые мною случаи не единственные.
          • UFO just landed and posted this here

            Only users with full accounts can post comments. Log in, please.