Opera проблеми з CSS3 keyframe animation
Вирішив продати майже всю анімацію за допомогою CSS3, а не jQuery.
Хром, ФФ, ІЕ10 порадували стабільною роботою (особливо ІЕ10 дуже приємно здивував). Опера в черговий раз розчарувала своїми незрозумілими заскоками.
Всі вищезгадані браузери відображають концентричні кола, що плавно розходяться. Опера ж у певний момент вирішує, що кіл і так достатньо і не обов'язково їх анімувати, тому вона просто зупиняє анімацію на 100% і на початковий кадр анімації не повертається, незважаючи на animation-duration infinite. При чому анімувати вона може не всі атрибути: найчастіше коло застигає з максимальним розміром і opacity = 1.0, хоча прозорість має зменшуватися до 0.0. Якщо в анімації вказано не два кадри (0% і 100%), а більше (наприклад, 0% 80% 100%), то може застрягти на якомусь із проміжних.
Гірше за те, що анімація у мене використовується не просто як декоративний елемент, а на ній ґрунтується функціонал сайту. Наприклад, приховування/поява секцій сайту реалізовано так само через анімації, і якщо Опері надумається не продовжувати анімацію, то подія animationend так само не генерується і сайт просто перестає функціонувати.
Був упевнений, що якщо анімація в Опері реалізована понад рік тому, та ще й підтримується зараз без вендорних префіксів, то все працюватиме коректно. Ан-ні. Тепер просто незрозуміло, що робити. Робити fallback на jQuery дуже не хотілося, тому що губиться вся суть витівки.
Хтось взагалі з таким стикався, і якщо так, то як вирішували і чи вирішили?