Vetka ([info]vetka_nn) wrote,
@ 2006-03-22 10:58:00
Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Entry tags:useful, webdev, work

Обнаружила еще одну кажется недокументированную багу ИЕ5.0 и попутно способ лечения. Известный CSS-хак для ИЕ < 6.0, способ переназначить стили, которые он интерпретирует по-своему:

<style type="text/css">
div#cont { float: left; width: 685px; /* Здесь пишем значение для ИЕ < 6.0 */ voice-family: "\"}\""; voice-family:inherit; width: 100%; /* А здесь для всех остальных браузеров. */ }
div#cont2 { /* Любой следующий селектор */ margin-right: 159px; }
</style>


Способ всем известный, НО. ИЕ 5.5 после этого продолжает обрабатывать стили нижеследующих селекторов, как положено. А вот ИЕ 5.0 следующий за этим хаком селектор напрочь игнорирует! Поэтому, для того, чтобы он продолжил обрабатывать остальные стили, после хака вставляем любой селектор с пустыми значениями. И код выглядит следующим образом:

<style type="text/css">
div#cont { float: left; width: 685px; /* Здесь пишем значение для ИЕ < 6.0 */ voice-family: "\"}\""; voice-family:inherit; width: 100%; /* А здесь для всех остальных браузеров. */ }
.empty { } /* Пустой селектор, нужный исключительно для ИЕ 5.0 */
div#cont2 { /* Любой следующий селектор */ margin-right: 159px; }
</style>


А вот только что пришла в голову еще одна идея: ведь можно вставлять не пустой селектор, а как раз тот, который и нужно скрыть от ИЕ 5.0. Только нужно учесть, что в ИЕ 5.5 он будет обрабатываться.



(Post a new comment)


[info]martovsky_nn
2006-03-22 08:03 am UTC (link)

пардон, тебе чего в результате надо добиться? просто чтобы для ие в css были свои стили, для остальных бродиловок другие, или я чего не так понимаю?

(Reply to this)(Thread)


[info]vetka_nn
2006-03-22 08:07 am UTC (link)
Да нет, как раз наоборот — чтобы гребаный ИЕ отображал всё так же, как и остальные браузеры, в соответствии со стандартами.

(Reply to this)(Parent)


[info]u_grin
2006-03-22 09:38 am UTC (link)
а что, разве ИЕ5 не понимал width в процентах (в CSS)? Странно, у меня вроде бы понимал... Правда, наверное, это был ИЕ5.5 уже...
А может и не было ничего...

(Reply to this)(Thread)


[info]vetka_nn
2006-03-22 10:49 am UTC (link)
Да там не в процентах дело, это я просто первый попавшийся кусок из кода выдрала в качестве примера. Дело в том, что ИЕ 5.0-5.5 совершенно по-своему трактуют ширину контента — они включают в нее все margin'ы-padding'и-border'ы, хотя они должны высчитываться отдельно. Вообще, более подробно можешь взглянуть тут: http://www.webmascon.com/topics/coding/38a.asp

(Reply to this)(Parent)(Thread)


[info]u_grin
2006-03-22 11:11 am UTC (link)
А, ты вон о чем... Тогда понятно.
...что сегодня - День Верстальщика? Вот ИгорьБорисыч разразился совершенно дивным эссе о шрифтах...

(Reply to this)(Parent)(Thread)


[info]vetka_nn
2006-03-22 11:43 am UTC (link)
Да нет, просто заказчик доложил о глюке, увидела скриншот — ужаснулась, кинулась исправлять. В процессе исправления открыла этот метод. :)

А ИгорьБорисыча я пока только вскользь пробежала глазами (как и всю сегодняшнюю вредленту) — некогда было обстоятельно читать. Сейчас освободилась малость, нужно бы уже взяться. :)

(Reply to this)(Parent)


[info]talya_oni
2006-03-22 01:48 pm UTC (link)
видя все это вспоминаю о тех курсачах по программированию, еоторые на мне весят:)

(Reply to this)(Thread)


[info]vetka_nn
2006-03-22 02:00 pm UTC (link)
Для кого — курсачи, а для кого — суровая жизненная необходимость. :)

(Reply to this)(Parent)(Thread)


[info]talya_oni
2006-03-22 02:01 pm UTC (link)
ну и для мен она должна бы стать реальностью, но думаю не выйдет:) не способная я к этим языкам:)

(Reply to this)(Parent)(Thread)


[info]vetka_nn
2006-03-22 02:07 pm UTC (link)
Ну да, если душа не лежит — лучше чем-нибудь другим заняться. Работа должна приносить не только материальное удовлетворение. :)

(Reply to this)(Parent)(Thread)


[info]talya_oni
2006-03-22 02:10 pm UTC (link)
одно жалко, поздно я поняла что это не мое:( на 4 курсе бросать как то не прилично прийдется топать сразу второе высшее получать:)

(Reply to this)(Parent)


Create an Account
Forgot your login?
Login w/ OpenID
English • Español • Deutsch • Русский…