Internet Explorer 6 умер, но клиенты не устают пинать его многострадальное тело. Спасибо компании Microsoft за то, что она, слепив на коленке браузер, все же позаботилась о верстальщиках, позволив им парсить определенный HTML код исключительно в IE, не затрагивая нормальные браузеры.
Допустим, какой-то кусок кода HTML должен выполняться только IE определенных версий и при этом игнорироваться нормальными браузерами. Нам помогут условные комментарии, распознаваемые IE версии 5 и выше. Хотя IE5 - окончательный труп, поэтому актуально на данный момент для 6-ки.
Условные комментарии HTML
Условный комментарий выглядит следующим образом:
<!--[if IE]> Инструкции для IE здесь. <![endif]-->
Именно потому, что технически эта корнструкция является комментарем в HTML, остальные браузеры будут воспринимать его как обычный комментарий. Internet Explorer же разберет специальный синтаксис <!--[if IE]> и разберет содержимое внутри так, как если бы это было обычное содержание. Лично я вставляю стили для IE6 по факту надобности. Иногда приходится делать велосипед и для 7-го.
Ниже написаны несколько условных комментариев, которые показывают версию Internet Explorer, которую вы используете.
<!--[if IE]> Инструкции для Internet Explorer <![endif]--> <!--[if IE 5]> Инструкции для IE 5 <![endif]--> <!--[if IE 5.0]> Инструкции для IE 5.0 <![endif]--> <!--[if IE 5.5]> Инструкции для IE 5.5 <![endif]--> <!--[if IE 6]> Инструкции для IE 6 <![endif]--> <!--[if IE 7]> Инструкции для IE 7 <![endif]-->
Свой HTML для Internet Explorer различных версий
В данной конструкции можно использовать операторы сравнения, указывая не какую-то одну версию IE, а несколько, на основании определенного условия. В таблице ниже приведены все операторы.
| Оператор | Описание |
|---|---|
| lt | меньше чем |
| lte | меньше или равно |
| gt | больше чем |
| gte | больше или равно |
Примеры
<!--[if ! IE 5]> Инструкции для IE 5.5, 6 или 7 <![endif]--> <!--[if gt IE 5.0]> Инструкции для IE 5.5, 6 или 7 <![endif]--> <!--[if lte IE 5.5]> Инструкции для IE 5.0 или 5.5 <![endif]--> <!--[if gte IE 6]> Инструкции для IE 6 или 7 <![endif]--> <!--[if lt IE 7]> Инструкции для IE 5.0, 5.5 или 6 <![endif]-->



