ошибка рендеринга в IE
на выходных опробовал новшество от Zend: Zend Neon Beta — IDE с привлекательным интерфейсом, кучей наворотов от Eclipse и Zend Studio, но правда и с жуткими тормозами
проверяя анализатор синтаксиса HTML, сверстал простенькую страничку на DIV’ах. Все понравилось, все красиво, но когда дело дошло до проверки кроссбраузерности увидел (О ЧУДО!) что IE не смог правильно отрендерить вложенные дивы!
точнее их атрибут цвета фона. Но почему именно так — я понять не смог и не могу… Выглядит ЭТО следующим образом:
страничка рендерится, но в структуре
<div>
<div>
content
</div>
</div>
, где каждый DIV имеет background цвет, внутренний слой отренедрился прозрачным, или наполовину заполненым! При этом, если свернуть и развернуть окно браузера, или поводить поверх DIV’а другим окном (калькулятором например), то фон прорисовывается нормально.
Сделал чай и подумал что может приводить к подобному. Ничего вразумительного в голову не пришло и я отправился в google. Буквально с первого же запроса нашел что проблема довольно распространенная и в сообществе верстальщиков приобрело название “IE redraw bug” или “IE restyling bug”, и тянулось еще с 2003го года (и в 7м IE до сих пор не исправлено). Проблем было много, а решений все небыло и небыло… Были вялые попытки, сводившиеся к изменению структуры HTML разметки, но в моем случае это не подходило, потому как нужно было найти ПРИЧИНУ, а просто избавиться от следствия всегда можно…
И решение было найдено! Настолько простое что стало смешно
Оказалось достаточным для всех DIV’ов, которые имели неприятные свойства рендеринга в IE, указать в стилях CSS атрибут zoom:1 (который, к слову, работает только в IE), который решил проблему.
Итог: проблема потребовала 2 часа поисков решения и 2 минуты исправления в коде…
Tags: IE, Zend, ошибки, решение
Также рекомендую к прочтению:- Zend Framework. Непонятная ошибка на *nix серверах (*RESOLVED*)
- сделал открытие для себя
- Zend_Db_Table vs PHPDoctrine
Ноябрь 18th, 2007 at 22:06
Не удивительно. Дело в том, что ИЕ разрабатывается и затачивается под HPML (Hui Prossysh Markup Language), а не HTML.
Ноябрь 26th, 2007 at 16:07
А я… А я… А я вам щаз всем такой | дам… Потому шо них в этом не понимаю…
Ноябрь 26th, 2007 at 17:21
2Сердце: зато напостил — отличился
Декабрь 21st, 2007 at 09:23
Большое человеческое спасибо … Я потратил на эту проблему немного больше …
Декабрь 21st, 2007 at 09:47
..а вот уже совсем скоро IE8 выйдет. С новыми багами и глюками
MS не дает расслабиться 
Март 3rd, 2008 at 21:24
Вроде не слышал чтобы жаловались на тормозность ЗендНеона…
Март 28th, 2008 at 19:26
Ура! Ура! Ура! Спасибо!