使用ng-class在IE中不能使用CSS动画

时间:2017-02-27 16:04:28

标签: angularjs css-animations ng-animate

我对AngularJS有一些基本的经验,但我是CCS动画的绝对初学者。 说,我正在努力拼凑这些东西:

  • 在CSS中,我定义了2个不同的“闪烁动画”类:.blink-anim-slow.blink-anim-fast引用具有不同持续时间的相同@keyframes定义
  • 使用3个单选按钮,您可以为<div>选择动画: / 慢速闪烁 / 快速闪烁
  • 具有<div>属性的简单ng-class可应用不同的动画

一切都在Chrome和Firefox中按预期运行。 但是,在 IE11 中,我得到了这种特殊行为:

在慢速和快速闪烁之间切换不直接,我必须首先检查“无”,然后我可以应用“慢”或“快”。

这是一个Plnkr:http://plnkr.co/edit/16aQRENmVj3wdpv9BQiE?p=preview

现在我有点困惑,我的错误是... CSS或Angular相关?

我读过媒体查询和IE,但我没有使用它。 我不确定是否需要使用ngAnimate ...但可能不是这么简单的用例。

非常感谢指导我正确的方向或更新的plunkr!

1 个答案:

答案 0 :(得分:0)

好吧,我找到了解决这个问题的方法,但我不知道这是否是IE漏洞的解决方法,或者是否必须这样做。

事实是:当我使用 两个单独的@keyframes定义 (一个用于慢速闪烁,一个用于快速),一切适用于所有3个经过测试的浏览器。

以下是带有更新CSS的Plunker:http://plnkr.co/edit/PQ2iiusXGdLwcCrJfF1T?p=preview

我仍然不是CSS大师,但对我来说,只使用不同的名称定义两次相同的@keyframes是没有意义的。但是,在引用具有不同动画持续时间的@keyframes时,真正的区别就会出现。

如果您对此有更多了解,请发表评论。谢谢!