2017-03-23 19 views
1

選択ボックスがハイライト表示される選択ボックスアニメーションがあります。どうやら、キーフレームアニメーションはChromeで正常に動作しますが、IE11では正しく動作しません。 IE11でも動作するように、コード内で何を変更する必要があるのか​​を知りたいと思います。IE11でキーフレームが正しく機能しない

.animate-box{ 
 
    height: 100%; 
 
    -moz-animation-duration: 0.5s; 
 
     -webkit-animation-duration: 0.5s; 
 
     -moz-animation-name: changeShadow; 
 
     -webkit-animation-name: changeShadow; 
 
     -moz-animation-iteration-count: infinite; 
 
     -webkit-animation-iteration-count: infinite; 
 
     -moz-animation-direction: alternate; 
 
     -webkit-animation-direction: alternate; 
 
    border: 1px solid black; 
 
} 
 
@-webkit-keyframes changeShadow{ 
 
    from { 
 
    box-shadow: 0px 0px 10px #90a4b2; 
 
    } 
 

 
    to { 
 
    box-shadow: 0px 0px 20px #337ab7; 
 
    } 
 
} 
 

 
@-moz-keyframes changeShadow{ 
 
    from { 
 
    box-shadow: 0px 0px 10px #90a4b2; 
 
    } 
 

 
    to { 
 
    box-shadow: 0px 0px 20px #337ab7; 
 
    } 
 
}
<select class="animate-box"> 
 
    <option value="volvo">Volvo</option> 
 
    <option value="saab">Saab</option> 
 
    <option value="mercedes">Mercedes</option> 
 
    <option value="audi">Audi</option> 
 
</select>

+0

:また、あなたは速記animationプロパティを使用することができますか? [それはサポートされているようです](http://caniuse.com/#search=keyframes)。 –

+0

私の間違い、私はCSSにアニメーション属性を追加するのを忘れてしまった。この問題を閉じる – Brk

答えて

1

あなたはIE10 +のCSSアニメーションのための接頭辞プロパティを追加する必要があり、 CanIUse?で確認してください。 IEで何が起こる

.animate-box { 
 
    height: 100%; 
 
    -webkit-animation: changeShadow 0.5s infinite alternate; 
 
    -moz-animation: changeShadow 0.5s infinite alternate; 
 
    animation: changeShadow 0.5s infinite alternate; 
 
    border: 1px solid black; 
 
} 
 
@-webkit-keyframes changeShadow { 
 
    from { box-shadow: 0 0 10px #90a4b2; } 
 
    to { box-shadow: 0 0 20px #337ab7; } 
 
} 
 

 
@-moz-keyframes changeShadow { 
 
    from { box-shadow: 0 0 10px #90a4b2; } 
 
    to { box-shadow: 0 0 20px #337ab7; } 
 
} 
 

 
@keyframes changeShadow { 
 
    from { box-shadow: 0 0 10px #90a4b2; } 
 
    to { box-shadow: 0 0 20px #337ab7; } 
 
}
<select class="animate-box"> 
 
    <option value="volvo">Volvo</option> 
 
    <option value="saab">Saab</option> 
 
    <option value="mercedes">Mercedes</option> 
 
    <option value="audi">Audi</option> 
 
</select>

+1

ありがとうsergey Denisov – Brk

0

私はCSSにアニメーションプロパティを追加するのを忘れていることが分かったとunprefixキーフレームを含める:

.animate-box{ 
    height: 100%; 
    -moz-animation-duration: 0.5s; 
    -webkit-animation-duration: 0.5s; 
    animation-duration: 0.5s; 
    -moz-animation-name: changeShadow; 
    -webkit-animation-name: changeShadow; 
    animation-name: changeShadow; 
    -moz-animation-iteration-count: infinite; 
    -webkit-animation-iteration-count: infinite; 
    animation-iteration-count: infinite; 
    -moz-animation-direction: alternate; 
    -webkit-animation-direction: alternate; 
    animation-direction: alternate; 
    border: 1px solid black; 
} 

@keyframes changeShadow{ 
    from { 
    box-shadow: 0px 0px 10px #90a4b2; 
    } 

    to { 
    box-shadow: 0px 0px 20px #337ab7; 
    } 
} 
+0

また、修正されていない 'keyframes'も含める必要があります。ちなみに、必要なコード量を減らすには、ここで '' animation''の略語(https://developer.mozilla.org/ja/docs/Web/CSS/animation)を使うことができます: 'animation:changeShadow .5s無限の代替; – Shaggy

+0

クイック返信ありがとう – Brk

関連する問題