Подражать переходу CSS3 в IE?

Я использую комбинацию правил для достижения правила CSS3 transition в максимально возможной степени совместимости между браузерами: я использую transition, -webkit-transition, -moz-transition и -o-transition.

Есть ли аналогичное свойство -ms-transition для любой версии Internet Explorer? Есть ли собственный фильтр для более старых версий IE, аналогичный тому, как работают следующие правила для непрозрачности в IE 6-8?

/* IE 8 */ 
-ms-filter: "progid:DXImageTransform.Microsoft. Alpha(Opacity=50)"; 
/* IE 5-7 */ 
filter: alpha(opacity=50);

Ответ 1

В более старых версиях IE отсутствует какой-либо эффект перехода.

Единственный способ, которым я знаю, что-то близкое ему, - использовать методы JQuery fadeIn() и fadeOut(), которые действительно работают во всех версиях IE.

Тем не менее, я должен предупредить, что они все еще падают от IE с плохой обработкой непрозрачности IE. Эффекты затухания JQuery могут иметь некоторые странные сбои при использовании с IE6-8, особенно если вы затухаете блок, содержащий графику.

Если вы решите попробовать, код прост. Просто включите JQuery в свои заголовки, а затем:

$('#myelement').fadeIn();

в соответствующем месте.

Дополнительную информацию см. в странице руководства JQuery FadeIn.

Конечно, это было бы вместо любого эффекта перехода CSS; все это делается с помощью Javascript, и вам, вероятно, придется выбросить свои переходы CSS3 или столкнуться с эффектами JQuery. Но если вы хотите, чтобы он работал с IE, это цена, которую вы заплатите.

И, как я говорю, следите за глюками. Проверьте его и посмотрите, как он вас ищет.

Это единственный способ сделать это, поэтому, если вам действительно нужен эффект перехода в IE, это то, что вам нужно сделать, но будьте готовы принять, что он может выглядеть не так хорошо.

Другие библиотеки Javascript, такие как Mootools или Dojo, могут иметь схожие эффекты, которые вы также могли бы попробовать, но я бы предположил, что если они у них есть, они будут страдать от тех же проблем.

Ответ 3

IE10 будет иметь переходы CSS3, до тех пор вам придется использовать javascript.

Ответ 4

Правило перехода CSS3 и другие правила CSS3 отлично работают в IE 10. Префикс "-ms-" больше не требуется, но все равно будет распознан. Чтобы обеспечить совместимость в будущем, необходимо соответствующим образом обновлять приложения с использованием префикса поставщика Microsoft со свойствами перехода. Итак, обновите свой CSS-код, добавьте строку с правилом без префикса.