/var/log/life.log
Блог программиста из солнечной Бурятии

В защиту IE6

Пётр Диденко написал пост в защиту ie6. Я до недавнего времени не особо любил ie, впрочем мне он и сейчас не особо-то и нравится. Причина в постоянной проблеме вёрстки под ie. Но теперь я уважаю разработчиков IE6 :). Ведь если взглянуть с другой стороны. IE6 являлся прорывом в свое время, и даже опережал время. То же видео, которое стало так популярно совсем недавно, было возможно в internet explorer давно. С того момента ie6 не менялся, но до сих пор в нём можно сделать, то что стало возможно в других браузерах не так давно. Например hoodooball.com, я для себя считаю этот сайт своеобразным испытанием на кроссбраузерность :). Да есть некоторые глюки, и процессор грузится сильнее. Ругать разработчиков за ie6 нельзя. Другое дело ie7, ie8 в них вводились весьма странноватые фичи, и лечились некоторые глюки прошлых версий, безусловно и велась работа над быстродействием. Но как то не очень это получалось, что показывала популярность ie6 против ie 7 и 8. А главное, как пользовались костылями, так ими и продолжаем пользоваться. Другое дело ie9, произведена серьёзная работа, поддержка html5, css3. Но выходит так, что старые костыли не нужны/не работают, а новые фичи ещё включены не все, понятное дело, что бета, но оказываемся в безвыходном положении.

ох уж эта кроссбраузерность

Точнее даже не она, а подгонка разметки и стилей под IE6(т.к. им всё ещё пользуются), чтоб он тоже показывал так как этого хочется, ну или хотя бы приблизительно. Делаем, смотрим в опере – отлично, firefox – отлично, IE – бля…, и начинается подгонка. Вчера столкнулся с тем что IE не воспринимает :hover для всего кроме a, точнее я с этим столкнулся немного раньше, но решил что это мои корки, или IE, вобщем забил. Вчера я таки его победил, точнее не я, а Peter Nederlof и не вчера, а аж в 2005 году), это конечно костыли, но работает и хер с ним. Сегодня IE подсунул мне новую свинью. Всего то нужно было выровнять по центру табличку в div. Но было интересно то что как раз IE показал то что я ожидал увидеть, а опера и огнелис отказались ставить в центр табличку. А сделал я text-align:center для div. Выручил меня старый добрый center). И всё бы хорошо, но

The center element was deprecated in HTML 4.01.
The center element is not supported in XHTML 1.0 Strict DTD.

Так что было решено отказаться от такого подхода, начались поиски и оказалось, что text-align только для inline элементов коими не являются table и div(мне тут ещё и div запихать и отцентровать понадобилось), и в стандарте чёрным по белому написано:

Otherwise, if both ‘margin-left’ and ‘margin-right’ are ‘auto’, they will be set to equal values. This will center the element inside its parent.

что и было сделано. Opera и FireFox сделали всё как надо, а вот теперь настала очередь IE, он видимо этот стандарт видел впервые, и что бы заставить его повиноваться, пришлось в стиль div-родителя прописать text-align:center;
Чего интересного ждать от IE завтра?)