Условные комментарии Internet Explorer

Have a question? Ask in chat with AI!

firefox кушает ieКак мы все знаем, Internet Explorer это тот браузер, который доставляет веб разработчикам массу неудобств. Возможно это происходит потому, что Microsoft на данный момент имеет 3 совершенно разные версии браузера. Возможно потому, что ранние версии не стнадартизованы. Возможно потому, что IE6 не обновлялся несколько лет. Какова бы не была причина, IE с нами и нам нужно что-то с этим делать.

В каждой версии IE мы сталкиваемся с проблемами с CSS и JavaScript. Проблемы с margin, float, с абсолютным позиционированием, отсутствие поддержки PNG формата на протяжении долгого времени — вот лишь маленькая часть из тех проблем, с которыми сталкивается рядовой веб разработчик. К счастью, Internet Explorer поддерживает условные комментарии, которые позволяют нам адресовать выполнение блока кода HTML только в определенной версии этого браузера.

Примеры условных комментариев для IE

Код приведенный выше, устанавливает красный цвет для всех ссылок, если браузер — любой из IE.

Этот код подключает файл скрипта IE8.js если версия Internet Explorer ниже версии 8.

Приведенный выше код исправляет проблему с PNG форматом если браузер IE6.

Синтаксис условных комментариев IE

Оператор Пример Комментарий
! [if !IE] Оператор «НЕ». Ставиться перед функцией, оператором. Имеет обратное булево значение.
lt [if lt IE 5.5] Оператор «меньше чем». Возвращает истину, если первый аргумент меньше второго аргумента.В данном случае «если версия IE ниже, чем 5.5»
lte [if lte IE 6] Оператор «меньше или равно». Возвращает истину, если первый аргумент меньше или равен второму аргументу.
gt [if gt IE 5] Оператор «больше чем». Возвращает истину, если первый аргумент больше второго аргумента.
gte [if gte IE 7] Оператор «больше или равно». Возвращает истину, если первый аргумент больше или равен второму аргументу.
( ) [if !(IE 7)] Используется для создания более сложных операторов и подвыражений.
& [if (gt IE 5)&(lt IE 7)] Оператор «И». Возвращает истину, если все условия выполняются.
| [if (IE 6)|(IE 7)] Оператор «или». Возвращает истину, если хотя бы одно из условий выполняется.

Так как многие из нас не любят баги IE, то условные комментарии выглядят самым простым способ от них избавиться.

Ценные ресурсы

  • Довольно интересный материал на PPK
  • Почитайте о возможности IE8 эмулировать IE7
  • Ну и конечно, прочтите официальную MSDN документацию от Microsoft

Перевод статьи: http://davidwalsh.name/ie-conditional-comments

А вы используете при верстке условные комментарии IE?

Пока вы думаете, посмотрите интересное видео об апгрейде IE с версии 1.0 до 9.0 😉
[youtube]k5QqYVurImY[/youtube]


5 комментариев для “0

  1. Уведомление: Условные комментарии Internet Explorer | Grabr
  2. Хоть я и не занимаюсь версткой, потому что мой основной вид деятельности — это веб-программирование. Но зачастую, бывают такие моменты, когда требуются знания верстальщика. Когда же доходит речь до IE, то хоть «караул» кричи. А тут все наглядно, ясно и без «воды». Молодец!

  3. Уведомление: 6 полезных CSS кнопок | RusDigi.org Блог Гилязетдинова Руслана
  4. Уведомление: Создаем границу у сайта | RusDigi.org Блог Гилязетдинова Руслана

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Предыдущая запись 3D текст с помощью CSS
Следующая запись 6 полезных CSS кнопок