CSS keyframe animation: translate3d is not visible in IE10 and IE11

forethought

I have animation running continuously which moves a element(arrow) from right to left then rotate 180deg and move from left to right. For some reasons, animation is not visible in IE10 but arrow appears in left and right position.

Overall, animation happens but translate3d animation (move from left to right and right to left) is not visible.

@keyframes moveRightToLeft {
    0% {
        -moz-transform: rotateZ(0deg) translate3d(0%, 0, 0);
        -webkit-transform: rotateZ(0deg) translate3d(0%, 0, 0);
        -o-transform: rotateZ(0deg) translate3d(0%, 0, 0);
        -ms-transform: rotateZ(0deg) translate3d(0%, 0, 0);
        transform: rotateZ(0deg) translate3d(0%, 0, 0);
        opacity: 1;
    }
    50% {
        -moz-transform: rotateZ(0deg) translate3d(-80%, 0, 0);
        -webkit-transform: rotateZ(0deg) translate3d(-80%, 0, 0);
        -o-transform: rotateZ(0deg) translate3d(-80%, 0, 0);
        -ms-transform: rotateZ(0deg) translate3d(-80%, 0, 0);
        transform: rotateZ(0deg) translate3d(-80%, 0, 0);
        opacity: 0;
    }
    51% {
        -moz-transform: rotateZ(180deg) translate3d(0%, 13px, 0);
        -webkit-transform: rotateZ(180deg) translate3d(0%, 13px, 0);
        -o-transform: rotateZ(180deg) translate3d(0%, 13px, 0);
        -ms-transform: rotateZ(180deg) translate3d(0%, 13px, 0);
        transform: rotateZ(180deg) translate3d(0%, 13px, 0);
        opacity: 0;
    }
    75% {
        -moz-transform: rotateZ(180deg) translate3d(-40%, 13px, 0);
        -webkit-transform: rotateZ(180deg) translate3d(-40%, 13px, 0);
        -o-transform: rotateZ(180deg) translate3d(-40%, 13px, 0);
        -ms-transform: rotateZ(180deg) translate3d(-40%, 13px, 0);
        transform: rotateZ(180deg) translate3d(-40%, 13px, 0);
        opacity: 1;
    }
    100% {
        -moz-transform: rotateZ(180deg) translate3d(-80%, 13px, 0);
        -webkit-transform: rotateZ(180deg) translate3d(-80%, 13px, 0);
        -o-transform: rotateZ(180deg) translate3d(-80%, 13px, 0);
        -ms-transform: rotateZ(180deg) translate3d(-80%, 13px, 0);
        transform: rotate(180deg) translate3d(-80%, 13px, 0);
        opacity: 0;
    }
}
forethought

The problem with my CSS animation in Internet Explorer 10 and 11 was using percentage(%) value for one axis and pixel(px) value for other axis in translate3d. I was able to fix the bug moving to pixel based value for all axis in translate3d

@keyframes moveRightToLeft {
    0% {
        -webkit-transform: rotateZ(0deg) translate3d(0, 0, 0);
        -ms-transform: rotateZ(0deg) translate3d(0, 0, 0);
        transform: rotateZ(0deg) translate3d(0, 0, 0);
    }
    50% {
        -webkit-transform: rotateZ(0deg) translate3d(-70px, 0, 0);
        -ms-transform: rotateZ(0deg) translate3d(-70px, 0, 0);
        transform: rotateZ(0deg) translate3d(-70px, 0, 0);
        opacity: 1;
    }
    51% {
        opacity: 0;
        -webkit-transform: rotateZ(0deg) translate3d(-75px, 0px, 0);
        -ms-transform: rotateZ(0deg) translate3d(-75px, 0px, 0);
        transform: rotateZ(0deg) translate3d(-75px, 0px, 0);
    }
    52% {
        opacity: 0;
        -webkit-transform: rotateZ(180deg) translate3d(75px, 0px, 0);
        -ms-transform: rotateZ(180deg) translate3d(75px, 0px, 0);
        transform: rotateZ(180deg) translate3d(75px, 0px, 0);
    }
    55% {
        opacity: 1;
    }
    75% {
        -webkit-transform: rotateZ(180deg) translate3d(40px, 0px, 0);
        -ms-transform: rotateZ(180deg) translate3d(40px, 0px, 0);
        transform: rotateZ(180deg) translate3d(40px, 0px, 0);
        opacity: 1;
    }
    100% {
        -webkit-transform: rotateZ(180deg) translate3d(0px, 0px, 0);
        -ms-transform: rotateZ(180deg) translate3d(0px, 0px, 0);
        transform: rotate(180deg) translate3d(0px, 0px, 0);
        opacity: 1;
    }
}

It is interesting why IE cannot work with pixel for one axis and percentage value for other axis? For future use, thing to keep in mind.

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

CSS3 keyframe animation background image not changing in IE

分類Dev

CSSキーフレームアニメーション:translate3dはIE10およびIE11では表示されません

分類Dev

Links not displayed in IE10 when another element has CSS3 animation

分類Dev

IE10で0%と負の%の間でtranslate3d

分類Dev

CSS flexbox not working in IE10

分類Dev

IE10固有のCSS

分類Dev

IE11 CSS alternative to "unset"

分類Dev

Loading css (stylesheet) ONLY for IE11

分類Dev

IE11 ignores background color in CSS

分類Dev

Radio button animation not working in ie11 or edge

分類Dev

How can I stop a CSS keyframe animation?

分類Dev

IE10 CSS divfloatの問題

分類Dev

IE11のCSSブラー

分類Dev

cssアニメーションとanimation-directionがIE11で機能しない

分類Dev

Invisible element with visible :after pseudo-element not working in IE11

分類Dev

How can I make this CSS keyframe animation smooth when it restarts?

分類Dev

IE10 / 11をサポートするCSSグリッド構文

分類Dev

IE10のFlexbox

分類Dev

Ionic 3 - Polyfill for ES6 in IE11 Not Working

分類Dev

CSS3DアニメーションがIE11で正しく機能しない

分類Dev

IE10以下にcssを適用する

分類Dev

IE10でのCSSマスキング

分類Dev

IE10またはIE11が異なる画像を表示する場合

分類Dev

IE9とIE10またはChromeでCSSの動作が異なる

分類Dev

IE10以降の特定のCSSルールがIEで優先されない

分類Dev

Adding pause to keyframe animation

分類Dev

translate3dを使用するCSSローダーはInternetExplorer11では機能しません

分類Dev

Css3アニメーションはIE11では機能しません

分類Dev

ネストされたCSS3回転アニメーションがIE11で機能しない

Related 関連記事

  1. 1

    CSS3 keyframe animation background image not changing in IE

  2. 2

    CSSキーフレームアニメーション:translate3dはIE10およびIE11では表示されません

  3. 3

    Links not displayed in IE10 when another element has CSS3 animation

  4. 4

    IE10で0%と負の%の間でtranslate3d

  5. 5

    CSS flexbox not working in IE10

  6. 6

    IE10固有のCSS

  7. 7

    IE11 CSS alternative to "unset"

  8. 8

    Loading css (stylesheet) ONLY for IE11

  9. 9

    IE11 ignores background color in CSS

  10. 10

    Radio button animation not working in ie11 or edge

  11. 11

    How can I stop a CSS keyframe animation?

  12. 12

    IE10 CSS divfloatの問題

  13. 13

    IE11のCSSブラー

  14. 14

    cssアニメーションとanimation-directionがIE11で機能しない

  15. 15

    Invisible element with visible :after pseudo-element not working in IE11

  16. 16

    How can I make this CSS keyframe animation smooth when it restarts?

  17. 17

    IE10 / 11をサポートするCSSグリッド構文

  18. 18

    IE10のFlexbox

  19. 19

    Ionic 3 - Polyfill for ES6 in IE11 Not Working

  20. 20

    CSS3DアニメーションがIE11で正しく機能しない

  21. 21

    IE10以下にcssを適用する

  22. 22

    IE10でのCSSマスキング

  23. 23

    IE10またはIE11が異なる画像を表示する場合

  24. 24

    IE9とIE10またはChromeでCSSの動作が異なる

  25. 25

    IE10以降の特定のCSSルールがIEで優先されない

  26. 26

    Adding pause to keyframe animation

  27. 27

    translate3dを使用するCSSローダーはInternetExplorer11では機能しません

  28. 28

    Css3アニメーションはIE11では機能しません

  29. 29

    ネストされたCSS3回転アニメーションがIE11で機能しない

ホットタグ

アーカイブ