skip to content



HTML-кодинг для Internet Explorer, условные комментарии.

При написании HTML-кода сайта приходится учитывать тот факт, что каждый из браузеров имеет свои особенности при обработке HTML, CSS, JavaScript. В особенности это касается Internet Explorer, который отличает своебразным трактованием стандартов и несколько экстравагантным подходом к обеспечению совместимости с другими браузерами. Существует несколько различных способов обойти ошибки IE - css-хаки, определение версии браузера в JavaScript-коде, но они имеют свои недостатки - css-хак может в любой момент перестать работать при обновлении или выходе следующей версии IE.

Разработчики IE реализовали свой вариант включения участков кода, который будет исполняться только в IE - условные комментарии.Условный комментарий - специальная конструкция, которая обрабатывается и выполняется только браузером Internet Explorer, не совместима с каким-либо другими браузерами и не описана ни в одной из версий стандарта HTML.

В общем случае условный комментарий имеет следующий вид:

<!-- [if CONDITION]>

Код, который нужен для IE.

<![endif]-->

Здесь CONDITION - логическое условие, которое будет обработано IE и если оно будет истинно, то код, размещенный внутри условного комментария будет выполнен.

Пример условия:

<!-- [if IE]> ....... <![endif]--> - условие будет истинно, если браузер - Internet Explorer.

Условные комментарии позволяют также задать версию браузера, для которой нужно выполнить код:

  • [if IE 5] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии 5
  • [if IE 6] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии 6
  • [if IE 7] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии 7
  • [if lt IE 7] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии меньше 7
  • [if gt IE 6] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии больше 6
  • [if lte IE 6] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии меньшей или равной 6
  • [if gte IE 6] - код внутри условного комментария будет выполнен, если ресурс открыт при помощи IE версии большей или равной 6

Основные преимущества использования условных комментариев: можно реализовать код специально для Internet Explorer, не влияющий на отображение и функциональность страницы в других браузерах.

Основные недостатки использования условных комментариев: код не совместим со стандартами.

Powered by Drupal. CrystalX theme created by Nuvio | Webdesign.