У меня есть jQuery, который успешно добавляет необходимый класс для анимации ниже.Проблема с анимацией в браузерах без хрома
1) Во-первых, анимация ниже воспроизводится только в Chrome. Мой IE (версия 11.0) и Firefox (32.0.3) вообще не воспроизводят анимацию.
2) Во-вторых, если у меня нет «непрозрачности: 1;» в моем классе анимации элемент будет исчезать до непрозрачности 0 (его исходное значение). Есть ли лучший способ, чтобы он оставался в конечном значении анимации без необходимости устанавливать его в анимации? Кажется, что это неинтуитивно, чтобы устанавливать свойства элемента в классе анимации, так как это не ясно, когда он вступает в силу (до, после ключевого кадра).
HTML:
<!-- Appear after 1 second -->
<h1 data-appear='1'>1</h1>
CSS:
h1 {
opacity: 0;
}
@-webkit-keyframes appear {
0% { opacity: 0; }
50% { opacity: 0; }
100% { opacity: 1; }
}
@-moz-keyframes appear {
0% { opacity: 0; }
50% { opacity: 0; }
100% { opacity: 1; }
}
@-o-keyframes appear {
0% { opacity: 0; }
50% { opacity: 0; }
100% { opacity: 1; }
}
@keyframes appear {
0% { opacity: 0; }
50% { opacity: 0; }
100% { opacity: 1; }
}
.appear.delay1 {
animation-duration: 1s;
-o-animation-duration: 1s;
-moz-animation-duration: 1s;
-webkit-animation-duration: 1s;
animation: appear;
-o-animation-name: appear;
-moz-animation-name: appear;
-webkit-animation-name: appear;
opacity: 1;
}
ли порядок браузеров также имеет значение? Я замечаю, что люди склонны размещать самую основную инструкцию (в вашем случае «анимация-заполнение-режим») в нижней части списка поддержки браузера. – mariocatch
Я полагаю, это не имеет большого значения. Я верю, что последний поддерживаемый оператор является тем, который применяется к элементу. Например, если последний хром поддерживает как '-webkit', так и не-префиксный. Он будет использовать самое нижнее утверждение. Что такое 'анимация-fill-mode' в коде выше. Если все утверждения равны, это не имеет большого значения. Если реализация поставщика отличается от неподготовленного W3C, то это происходит. – Hless
Так что это сродни объявлению и установке ширины элемента 5 раз, с разными значениями каждый раз ... будет использоваться последний. Поэтому, если браузер поддерживает несколько префиксов, все они равны ему, что означает, что последний будет иметь приоритет. Я знаю, что они говорят, чтобы избежать комментариев «Спасибо», но что угодно - спасибо за быстрые результаты и отличное понимание. – mariocatch