Примечания и рекомендации для поддержки IE6 - PullRequest
3 голосов
/ 19 ноября 2010

Есть ли какие-нибудь хорошие замечания и рекомендации, которые следует учитывать при разработке сайтов, которые должны поддерживать Internet Explorer 6?

Я не ищу объяснений обилию ошибок, которые мы все уже узнали,Мне нужна некоторая общая информация, например, об элементах, которые следует предпочитать для определенных задач, о вещах, которые просто не работают в IE6, советах по CSS и т. Д.

Ответы [ 4 ]

3 голосов
/ 19 ноября 2010

вот те важные вещи, о которых я могу думать прямо сейчас:

  • Нет поддержки альфа-прозрачного PNG
  • Нет состояний наведения, кроме тега <a >
  • CSS плавает, ведя себя неожиданно.
  • Невозможно использовать максимальную / минимальную ширину / высоту.
  • Конфликт Боксовой модели (отступы не добавляются к ширине элементов).
  • иногда удваивает поля.
  • IE6 не поддерживает позицию: исправлено.

... и я начинаю впадать в депрессию, поэтому я остановлюсьздесь.

2 голосов
/ 19 ноября 2010

Мне повезло, что мне больше не нужно поддерживать IE6. Однако это недавнее воспоминание, поэтому у вас есть мои симпатии.

  1. Перейти на Quirksmode.org . Это отличный ресурс для выяснения возможностей различных браузеров. (видя все красные в столбце IE6, вы будете подавлены!)

  2. Если вы вообще планируете создавать какие-либо сценарии, используйте jQuery, а не пытайтесь работать с простым Javascript: jQuery прилагает значительные усилия для обеспечения кросс-браузерной совместимости даже в IE6. Это не 100%, но это довольно неплохо, и дает вам функции, которые иначе были бы совершенно невозможны в IE6.

  3. Следующие инструменты сделают вашу жизнь проще:

    • Дин Эдвардс ie7.js - библиотека JS, нацеленная на то, чтобы сделать IE6 более совместимой со стандартами (он также написал "ie8.js" и "ie9.js", которые расширяют исходный ie7.js до добавить дополнительные функции, отсутствующие в различных версиях IE)
    • Modernizr - библиотека JS / CSS, призванная помочь вам обойти несовместимости в старых браузерах.
    • IEPNGHack - позволяет использовать графику PNG с прозрачностью в IE6.
    • Независимо от того: Hover - позволяет использовать стиль :hover CSS с любым типом элемента (IE6 обычно допускает только :hover для <a> тегов).
    • CSS3Pie - библиотека, предназначенная для того, чтобы дать IE6 / 7/8 некоторые современные функции CSS3, включая радиус границы.

Возможно, есть еще кое-что, но это должно дать вам начало.

Одна вещь, проясняемая вашим работодателем, заключается в том, что, пока они настаивают на использовании или поддержке IE6, вы не сможете создавать современный многофункциональный веб-сайт. Есть пределы тому, насколько хорошо вы сможете сделать это, даже со всеми этими взломами. Кроме того, он будет медленным: IE6 мучительно медленен в лучшие времена, и все эти хаки будут только замедлять его.

Удачи.

1 голос
/ 19 ноября 2010

Плохо, что вам приходится поддерживать IE6, я думаю, мы все были там ...

К сожалению, я не могу указать вам некоторые общие рекомендации, кроме принципа KISS (пусть это будет просто глупо).Просто придерживайтесь CSS 2.1 и не используйте какие-либо новые модные технологии, такие как HTML5.Также даже не думайте об использовании каких-либо специальных селекторов CSS, таких как blabla > blabla.

. Позвольте мне указать на некоторые сайты, которые могут помочь вам в вашей работе:

Для тестирования я рекомендую настроить небольшую виртуальную машину (я бы рекомендовал использовать windows xp) с запущенным IE6.Инструменты тестирования, такие как IETester, могут использовать движок конкретного браузера, но у меня были различия между полнофункциональным IE6 и инструментами IETester - о, также есть мгновенная виртуализация с песочницами браузера Spoon.net (они должны былиубери IE, потому что MS так сказала ...).

1 голос
/ 19 ноября 2010

Просто говоря: «Не поддерживайте IE6!»может показаться очень приятным и легким для тех, кому не приходится иметь дело с реальностью, остается фактом, что многие веб-разработчики / дизайнеры просто не могут не иметь никакого контроля над этим решением.

С этимсказал, очевидно, что идеал будет "не поддерживать ie6".

Если вы должны поддержать его, то, сколько вы должны поддержать это зависит от того, почему вы должны;Это потому, что ваше веб-приложение предназначено для компании, которая имеет множество установок IE6, и оно знает, что в ближайшее время оно вообще не будет обновляться, или это просто для клиента, который хочет поддерживать «поддержку» для каждого возможного пользователя там.?Или это что-то среднее?

Вообще говоря, я стремлюсь к «функциональному, не совсем уродливому, но, безусловно, не идеальному пикселю» виду в IE6.Я использую IETester для проверки всех версий IE (например, между IE7 и IE8 существует множество различий), поэтому я тоже включаю IE6 и просто беспокоюсь о том, чтобы все выглядело в основном функционально для них.

Для моих клиентов этобыло достаточно.Пара спросила о поддержке IE6, и я смог показать им, что 1) набор обычных пользователей в Интернете, которые все еще используют его, относительно маленький и 2) эти пользователи, вероятно, видят так много глюковв любом случае, везде в Интернете они, вероятно, не замечают их больше.Я знаю, что № 2, вероятно, звучит крайне пренебрежительно, но у меня есть много неопровержимых доказательств, подтверждающих это.

Основная идея сводится к тому, что;сколько времени вы действительно потратите на настройку сайта, чтобы сделать его идеальным для старого, давно не поддерживаемого браузера, который использует все больше и больше с каждым днем, когда вы можете просто сделать его приемлемо функциональным, а затем посвятить все свое времядля более современных браузеров.

Но, опять же, степень, в которой вы можете выбрать этот маршрут, зависит от того, насколько важна поддержка IE6 для тех, кто вас использует, и почему это так важно для них.

но в любом случае, IETester является определенной рекомендацией для его тестирования: http://www.my -debugbar.com / wiki / IETester / HomePage

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...