хаки для интернет эксплорера, IE, internet explorer, ИЕ 6,7,8. исправление проблем в верстке под ИЕ
Отборная информация, которая вставляет!

Хаки для ИЕ/IE

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

Итак, есть всего 2 пути решения этой проблемы.

1 СПОСОБ. Использовать условные операторы. А именно:

<!--[if condition]> HTML <![endif]-->

где вместо condition вы можете вставить такие значения

IE

все версии эксплорера

lt IE 7 

Версии ниже указанной. В данном случае 7

lte IE

Версии ниже указанной или же равной ей.

IE 7

только указанная версия

gte IE 7

версии выше указанной или равной ей

gt IE 7 

версии выше указанной  

Вместо HTML вы должны вставить путь к файлу стилей. Таким образом мы говорим в коде, что если используется такая-то версия ИЕ, то используй такой-то файл стилей, который соответственно вы должны создать.

Пример использования

<head> 
<title>Test</title>

  <link href="all_browsers.css" rel="stylesheet" type="text/css">
  <!--[if IE]> 
 <link href="ie_only.css" rel="stylesheet" type="text/css"> 
  <![endif]-->

 <!--[if lt IE 7]>
   <link href="ie_6_and_below.css" rel="stylesheet" type="text/css">


   <![endif]-->

</head>

 В этом примере мы сообщаем браузеру, что если используется ИЕ то будет использован файл стилей ie_only.css, при этом если версия ниже 7, то для него будет взят файл стилей ie_6_and_bellow.css. Для всех остальных браузеров будет использован all_browsers.css

2 СПОСОБ – Использовать хаки в файле стилей

* html {}

Для ИЕ6 и ниже. примечание – код будет выглядеть приблизительно так * html #red{color: #000} Т.е. после хака нужно вставить нужный стиль, а в скобках те параметры, которые вы хотите, чтобы работали именно в определенном браузере

*:first-child+html {} * html {}

ИЕ 7 и ниже

*:first-child+html {}

Только ИЕ7

html>body {}

Новые браузеры и ИЕ7

html>/**/body {}

 

Новые браузеры, без ИЕ7

html:first-child {}

 

Опера 9 и ниже

 

Есть ещё 2 способа, которые я нашел.

1. !important

Вообще, этот тег означает преимущество использования того класа, где он стоит над другими, но его не поддерживает ИЕ6, поэтому можно делать так

<style type="text/css">
            p
            {
                background: green !important; /* для браузеров, кроме ИЕ6 */
                background: red; /* для IE 6 и ниже */
            }
        </style>

2. импорт стилей для браузеров не ИЕ

есть такой селектор

@import "non-ie.css" all;

Вы можете создать отдельный файл стилей non-ie.css, для всех браузеров, кроме ИЕ 7 и ниже, а в основном файле стилей прописать этот селектор. Он прикрепит к нашему основному файлу дополнительный, но фишка в том, что ИЕ7 и ниже не понимают этот селектор, а значит будут игнорировать этот файл.

П.С. Недавно моя кошечка ни стого ни с сего начала блевать, жаль, что я живу не в столице, а то быстро позвонил бы в 

ветпомощь на дому


 

Похожие статьи:



13 комментариев к “Хаки для ИЕ/IE”


9643e5d7

  1. :

    Здесь в общем-то тоже не все хаки, если скомбинировать с моей подборкой — получится больше :)

  2. Павел:

    Вы ссылками обмениваитесь, что ли?

  3. :

    Господи, єто все банально!
    Лучше бы рассказали (если знаете), какие теги ИЕ игнорирует! Потому что иногда используешь что-то, а МС-говно-браузер не понимает и выбрасывает ошибку.

  4. :

    Не очень понятно насчёт второго способа.
    Я прописала так: … background:url(../themes/Gillette/forum/popup.jpg) repeat-x;*background-attachment:fixed; …. Работает как в ie6 так и в ie7
    Пример здесь (click on preview):

  5. сергей:

    Спасибо автору.Очень интересная и важная статья для начинающих.Ещё раз спасибо)