Особенной любовью, конечно.

Задумайтесь, ведь в остальных браузерах блочная вёрстка выглядит более-менее одинаково. По крайней мере, блоки ведут себя должным образом.
А большая часть времени уходит на приручение ИЕ6.

Но, если бы было иначе, то понятия «кроссбраузерная вёрстка» не существовало бы. Это было бы само собой разумеющимся. И за это бы не доплачивали бы. Верстать было бы просто (проще, дешевле).

Поэтому, ИЕ6 — это в определённом плане кормилец. Это как корова, которая даёт молоко и мясо. Но за ней же всё равно приходится убирать говно!

Это то, почему я НЕ ненавижу ИЕ6.

А люблю я его потому, что он предсказуем. Абсолютное большинство глюков можно предсказать, и, соответственно, их избежать.

Вот что я делаю, чтобы приручить IE6:

  • обязательно доктайп
  • если кусок какого-то блока скрывается при задании отрицательных марджинов — поможет position:relative
  • если правый/левый марджин у плавающего (float) блока удваивается, нужно задать display:inline для него
  • hasLayout — решает проблемы для блоков с position:relative, для блоков, внутри которых есть плавающие блоки. hasLayout задаётся установкой: height, width, zoom. Раньше я в отдельном CSS-файле задавал height:1px для всех нужных блоков, потом, как начал использовать jQuery с его анимацией высот — пришлось тупо писать zoom:1
  • повторяющиеся символы на следующей строке — display:inline для всех элементов, или margin-right:-3px для последнего, или комментарий < ! - - - - > в конце последнего< / l i >
  • :hover может быть только у того элемента, который имеет аттрибут href=»». Т.е. < a h r e f = " " > < / a >
  • после каждого изменения кода или CSS нужно проверять во всех браузерах
  • свойства right и bottom ИЕ6 рассчитывает неправильно. Поэтому правые и нижние уголки, «вывешиваемые» абсолютным позиционированием «скачут». Поэтому приходится использовать
    left: expression(this.parentNode.offsetWidth+'px');
    и
    top: expression(this.parentNode.offsetHeight+'px');

Кроме того, ИЕ6 поддерживает expression’ы, так что всё, что не удаётся добиться CSS’ом — можно приделать expression’ом.

Правда остаётся нерешённой проблема позиционирования PNG-бекграунда. Знаю, есть яваскриптовые примочки для этого. Но я не люблю такого. Ну вот не люблю и всё! Поэтому из 300+ проектов я такую примочку использовал в 1-2. Если можно обойтись без неё — никто мне не докажет, что это проблема. Так, мелкий недочёт.

Любите IE6 и он полюбит вас :)

Оценить:|1
  
Комментировать
Раздел: Браузеры    
Просмотров: 1634
Комментариев (2)
  1. Greg
    Григорий Кочнев [Greg]
    17.05.2011 в 14:36

    Согласен по поводу IE6, что это своего рода был «кормилец» и в тоже время известный «мучитель».
    Говорю был т.к. всё меньше его поддерживаю лично я и коллеги.
    Сейчас у нас поддержка IE6 по отдельной договоренности за дополнительную плату.

    16_stopie

Оставить комментарий