(no subject)

Monday, April 14th, 2008 00:00
kastaneda: (Default)
[personal profile] kastaneda
<Ликбез> Microsoft Internet Explorer, он же MSIE, он же «Ослик», он же «эта чёртова зараза» — давняя и привычная проблема для веб-разработчиков. Есть такая важная для веба технология — CSS, так вот она существует в двух версиях: «по стандартам» (для Firefox, Opera, Safari и Konqueror'а) и «для MSIE». </Ликбез>

Был такой классический CSS-хак «star-HTML»:

h1 { color: green } /* правило для всех браузеров */
* html h1 { color: red } /* только для MSIE 6 */

То есть, по «правилам» надо было бы сунуть CSSку для MSIE в conditional comment, но я такие правила не очень люблю. Формально синтаксис CSS не нарушен, правило работает только для MSIE 6, ради чего нам заводить отдельную CSSку? …Ах да, есть же ещё MSIE 7, и на нём больше не работает «star-HTML hack» (к тому же, он по-новому нарушает стандарты, и CSS для MSIE 6 ему часто не подходит). Но и к нему нашёлся свой подход:

*+html h1 { color: blue } /* только для MSIE 7 */

Вроде бы веб-разработчики нашли способ сосуществовать с косяками MSIE, причём — с косяками разных версий. Для всех броузеров пишем один код, для MSIE 6 и MSIE 7 пишем специфические поправки. Казалось бы, вот он, happy end — но внезапно на сцене появляется Opera версии 9.27, чтоб ей пусто было. Итак, неиллюзорная жесть: в версии 9.26 правило с префиксом *+html ещё игнорировалось, а в 9.27 оно уже не игнорируется. Приплыли…
(will be screened)
(will be screened if not validated)
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

September 2025

M T W T F S S
12345 67
891011121314
15161718192021
22232425262728
2930