Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CSS Keyframe animations for all browsers?

Tags:

css

less

I have a swing animation that I would like to work on all (modern) browser. Do I have the correct css?

Also, what are the other browsers equivalent for: -webkit-transform-origin:top;

also, is there an easier way to write this out, seems like a lot of code? Im using less.

.bow{   
    -webkit-animation: swing 3s infinite ease-in-out;
    -moz-animation:    swing 3s infinite ease-in-out;
    -o-animation:      swing 3s infinite ease-in-out;
    -ms-transition:    swing 3s infinite ease-in-out; 
    animation:         swing 3s infinite ease-in-out;
}

@-webkit-keyframes swing{
    0%{-webkit-transform:rotate(-3deg)}
    50%{-webkit-transform:rotate(3deg)}
    100%{-webkit-transform:rotate(-3deg)}
}

@-moz-keyframes swing{
    0%{-moz-transform:rotate(-3deg)}
    50%{-moz-transform:rotate(3deg)}
    100%{-moz-transform:rotate(-3deg)}
}

@-o-keyframes swing {
    0%{-o-transform:rotate(-3deg)}
    50%{-o-transform:rotate(3deg)}
    100%{-o-transform:rotate(-3deg)}
}

@-ms-keyframes swing {
    0%{-ms-transform:rotate(-3deg)}
    50%{-ms-transform:rotate(3deg)}
    100%{-ms-transform:rotate(-3deg)}
}

@keyframes swing {
    0%{transform:rotate(-3deg)}
    50%{transform:rotate(3deg)}
    100%{transform:rotate(-3deg)}
}
like image 383
panthro Avatar asked Mar 15 '26 17:03

panthro


2 Answers

for animation use can use:

.animation(@value){
    -webkit-animation: @value;
    -moz-animation:    @value;
    -o-animation:      @value;
    -ms-transition:    @value;
    animation:         @value;
}

.test{
  .animation(swing 3s infinite ease-in-out);
}

.test1{
  .animation(~"swing 3s infinite, swing 3s infinite");
}

for the keyframes in Less, it's kind of strange: How to set keyframes name in LESS

like image 59
Slawa Eremin Avatar answered Mar 19 '26 01:03

Slawa Eremin


I have a swing animation that I would like to work on all (modern) browser. Do I have the correct css?

This question does not fit SO... just prepare a Fiddle, try it yourself, and IF it does not work, come back asking WHY it does not work. Don't post code asking IF it works.

Also, what are the other browsers equivalent for: -webkit-transform-origin:top;

  • transform-origin
  • -ms-transform-origin

also, is there an easier way to write this out, seems like a lot of code? Im using less.

You can generate prefixed code on-the-fly with Prefix Free, or at compile time with Prefixr, but since you are using LESS, take a look at LESS Prefixer.

like image 35
Andrea Ligios Avatar answered Mar 19 '26 01:03

Andrea Ligios



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!