CSS для IE6 и IE7, FF, Opera
Этот пост несколько не по теме наболевшего в жизни обыденной, но уж точно набившее оскомину упорство браузеров Internet Explorer (IE6 и IE7) игнорирование CSS. Поэтому, чтобы и самому запомнить, да и чтобы другие посмотрели, решил выложить правила или хаки (кому как больше нравится), по которым можно разграничивать восприимчивость CSS тем или иным правилом.
Если перед свойством поставить две косые черты (//), то это свойство будет восприниматься только Internet Explorer. Причем всеми версиями:
div {
background: red; /* для нормальных браузеров */
//background: green; /* для всех ie */
}
Чтобы установленные правила CSS работали только в IE7, можно сделать следующее:
*+html ваш_элемент {...}
или
*:first-child+html ваш_элемент {...}
Чтобы то же самое работало в IE6:
* html ваш_элемент {...}
Либо перед свойством поставить знак минус (-):
div {
-background: blue; /* для ie6 */
}
Иногда же, нужен обратный ход. Т.е. когда, например, весь CSS написан под IE, а нужно вставить пару хаков для FireFox. Тогда нам на помощь приходят следующие хитрости записи CSS:
ваш_элемент, x:-moz-any-link {...}
или
html:root ваш_элемент {...}
Вариант выше будет работать и в Safari.
Ну и на закуску, хаки для Opera (т.е. данные конструкции будут работать только в Opera):
@media all and (min-width: 0) {
ваш_элемент {...}
}
или
html:first-child ваш_элемент {...}
За сим кончаю. Надеюсь, что кому-то эта информация будет полезна.



Чтоже ты, нехороший такой человек, раньше мне этого не подсказал… )))
ЭЭЭЭ, а ты не спрашивал