2009-03-20 3 views
13

Я только что загрузил полную версию IE8, чтобы я мог протестировать сайт, который только что создал. [Пример удалена]IE8 рендеринг прозрачных pngs FUBARed на моем сайте

Фокус на фоновом изображении левой боковой панели. Предположим, что это полупрозрачное изображение .png 1x1, которое повторяется. IE8 делает его градиентом !!! Когда вы пытаетесь прокрутить окно или указатель мыши на боковой панели, он становится даже более выигрышным.

Я уже тестировал этот сайт в обычных браузерах (IE7, Firefox и Chrome). Это выглядит так, как я его разработал. Однако IE8 FUBARed. Я попытался установить IE8 в режим «IE7», но он по-прежнему выглядит дерьмовым. IE 8 в режиме IE7, очевидно, не выполняет то же самое, что и настоящий IE7. Даже «метатег IE7» не работает.

У кого-нибудь еще были проблемы, подобные этому? Я думал, что IE8 должен быть улучшением, а не шагом назад.

P.S. Извините, что на этой странице вы видите дурную разметку. Я использовал функцию «Сохранить целую страницу» IE.

+0

Я не вижу проблемы. Он выглядит точно так же в IE 8.0.6001.18702, как и в FireFox 3.0.7. – mhenry1384

+0

. Я столкнулся с этой проблемой на точной версии mhenry1384, упомянутой выше, IE 8.0.6001.18702. Как было предложено ниже, изменение фонового изображения .png Я использовал пиксель размером 1x2, решив проблему. Спасибо, что разместили свой вопрос. – zombat

ответ

24

Это может быть ошибка рендеринга в IE8, или, возможно, это некоторая функция для сглаживания краев повторяющихся изображений, что дает неожиданный результат. В любом случае, не удивительно, что у вас возникают проблемы с использованием такого небольшого изображения. Вы понимаете, что браузер должен нарисовать изображение 190152 раз, чтобы отобразить страницу?

Я использую 10x10 полупрозрачный png в качестве фона для div на странице, и он отлично отображает IE8.

+0

Размер изображения не имеет значения по рисунку, заполняет средние показатели. Программное обеспечение (или аппаратное ускорение) устанавливает цвет каждого пикселя, получая смещенный цвет пикселя по шаблону заполнения математически. Таким образом, пиксель в (10,10) будет заполнен (5,5) шаблоном 5x5, (2,2) рисунка 4x4 или (1,1) шаблона 1x1. Более того, шаблону 1x1 может быть предоставлен специальный случай, который означает, что вся область будет заполнена сплошным цветом, и это может увеличить скорость для некоторых платформ. Итак, не стесняйтесь использовать 1px-помощники там, где это необходимо. – SuperDuck

+0

@SuperDuck: размер не должен иметь значения, но, очевидно, это так. Я помню Netscape 4, где повторяющиеся изображения вообще не работали, если они не были в несколько пикселей в ширину ... – Guffa

+0

Да, это имело значение из-за некоторых ошибок. Но я имею в виду не производительность (т. Е. Количество плиток не имеет значения). Изображения 1x1 очень часто используются программным обеспечением, включая Dreamweaver и MS. Во всяком случае, я вижу, что вы беспокоитесь, и именно поэтому я использовал более широкие изображения в эпоху Netscape. – SuperDuck

2

Я исправил ошибку, и это не проблема гаммы, упомянутая в этом другом сообщении. Моя проблема вызвана тем, что изображение имеет размер 1x1 пиксель. Я просто изменил его на 1x2, и он исправил проблему. Weird

[edit] Просто увидел сообщение Гуффа после того, как я спросил об этом. См. Его ответ.

+5

Я бы определенно сделал это больше, чем это. На самом деле небольшие фоновые изображения вызвали ужасные проблемы с производительностью в браузерах прошлого. Сбив его, скажем, 64x64, не стоило бы вам большого размера файла. – bobince

+1

Я пробовал сначала с гамма-коррекцией с помощью pngcrush - не работал - поэтому я пробовал этот подход - изображение размером 5x5 пикселей все равно не принимало его, и 10x10 - так пробовали с 64x64, и он работает магически. – easwee

1

У меня была аналогичная проблема с сайтом, который я строю. Проблема произошла только на 50% машин с ie8, на которой она была протестирована, я создавал ее для ИТ-фирмы, поэтому имел доступ к большому количеству компьютеров. Мы смогли «исправить» проблему, переключив аппаратное ускорение на проблемные компьютеры, а не на то, что это действительно исправление.

+0

вкл. Или выкл.: Переключение не является идемпотентным –

1

Спасибо за помощь по этой проблеме - какая странная ошибка.

Я также сталкивался с проблемой на 50% компьютеров с IE8 (имел доступ к довольно многим машинам). Когда у меня был полупрозрачный png 1x1px, установленный в качестве фонового изображения на div с CSS, IE отобразил бы это как напуганный вертикальный, прозрачный градиент.

Изменение исходного изображения на 5x5px png той же непрозрачности исправлено ошибка ... go IE!

1

Проблема был мой оригинальный PNG был 1 × 1, и по какой причине IE8 был не нравится пытаться плитку, что и обрабатывать альфа-прозрачность на одновременно. Когда я случайно сохранил , это изображение с гораздо большей копией I имело в моем буфере обмена 100 × 100, оно закончилось до исправления любой проблемы Интернет Проводник имел обработку прозрачность png.

Source

Смежные вопросы