I created a CSS3 animation that works as intended, but on Internet Explorer the rotation is very jittery.
I'm creating a spinner loading indicator so I use CSS animations to do a transform: rotate(...);. On Chrome and other browsers, the rotation is smooth, but on Internet Explorer it appears slightly wobbly.
I tried setting the transform-origin: center, tried using straight pixel values instead of em units and various other things, but nothing seemed to work.
Any ideas on how to improve this animation?
If I make the "track" (border-color) that the quadrant spins upon completely transparent, it makes the effect less noticeable, but I figured I'd ask in case anyone has any ideas.
.loading {
  display: inline-block;
  font-size: 20px;
  height: 1em;
  width: 1em;
  margin: 0 auto;
  position: relative;
  -webkit-animation: loading 1s infinite linear;
  -moz-animation: loading 1s infinite linear;
  animation: loading 1s infinite linear;
  border-left: 0.25em solid rgba(0, 0, 0, .3);
  border-right: 0.25em solid rgba(0, 0, 0, .3);
  border-bottom: 0.25em solid rgba(0, 0, 0, .3);
  border-top: 0.25em solid rgba(0, 0, 0, .8);
  border-radius: 100%;
  vertical-align: middle;
  margin: 0 0.5em;
}
.loading * { display: none; }
@keyframes loading { from { transform:rotate(0deg); } to { transform:rotate(360deg); } }
@-moz-keyframes loading { from { -moz-transform:rotate(0deg); } to { -moz-transform:rotate(360deg); } }
@-webkit-keyframes loading { from { -webkit-transform:rotate(0deg); } to { -webkit-transform:rotate(360deg); } }<div class="loading"></div>