Im Internet Explorer scheint diese Animation zu wackeln. Ich las die Antwort auf this question und sie ließen es klingen, als ob es möglich ist, zu beheben.Wobbly CSS Animation mit Border-Radius im Internet Explorer
Ich kann ein Bild nicht wirklich verwenden, da der Rahmenradius nicht konstant ist, und ich würde es vorziehen, kein animiertes GIF zu verwenden.
Ich verstehe "Wobble" ist keine sehr gute Beschreibung, aber ich kann nicht mit anderen Worten, um es zu beschreiben. Ich habe es nicht mit Opera/Safari getestet, also wenn Sie eines von beiden haben, würde ich gerne wissen, ob sie korrekt angezeigt werden oder auch das Problem haben. Bitte führen Sie das folgende Snippet in Chrome/Firefox und vergleichen Sie es mit dem Snippet in Internet Explorer:
@keyframes spin{
\t 0% {transform:rotateZ(0deg);}
\t 50% {transform:rotateZ(360deg);border-radius:60%;}
\t 100%{transform:rotateZ(720deg);}
}
@-webkit-keyframes spin{
\t 0% {transform:rotateZ(0deg);}
\t 50% {transform:rotateZ(360deg);border-radius:60%;}
\t 100%{transform:rotateZ(720deg);}
}
@-moz-keyframes spin{
\t 0% {transform:rotateZ(0deg);}
\t 50% {transform:rotateZ(360deg);border-radius:60%;}
\t 100%{transform:rotateZ(720deg);}
}
@-ms-keyframes spin{
\t 0% {transform:rotateZ(0deg);}
\t 50% {transform:rotateZ(360deg);border-radius:60%;}
\t 100%{transform:rotateZ(720deg);}
}
@-o-keyframes spin{
\t 0% {transform:rotateZ(0deg);}
\t 50% {transform:rotateZ(360deg);border-radius:60%;}
\t 100%{transform:rotateZ(720deg);}
}
#spinme{
\t display:inline-block;
\t position:relative;
\t left:0;
\t top:0;
\t margin:0.2rem;
\t width:0.8rem;
\t height:0.8rem;
\t border:0.2rem solid black;
\t border-radius:0;
\t outline: 1px solid transparent; /* require to remove jagged edges in firefox */
\t transform:rotateZ(0deg);
\t animation: spin infinite 4s;
\t -webkit-animation: spin infinite 4s;
\t -moz-animation: spin infinite 4s;
\t -ms-animation: spin infinite 4s;
\t -o-animation: spin infinite 4s;
}
#spinme:nth-child(2){animation-delay:0.06s}
#spinme:nth-child(3){animation-delay:0.12s}
#spinme:nth-child(4){animation-delay:0.18s}
<div id="spinme"></div>
<div id="spinme"></div>
<div id="spinme"></div>
<div id="spinme"></div>
Der outline
Hack die scharfe Kante kam von this answer zu beheben.
Als eine Nebenfrage, und aus Neugier, welche dieser Präfixe sind eigentlich erforderlich? Ich schaute auf die compatibility requirements, um es in älteren Browsern zu funktionieren, aber es erwähnt immer nur das -webkit
Präfix: keines der -moz
, -ms
oder -o
Präfixe scheinen für jede Browser-Version benötigt werden.
Ich habe auch gerade überprüft shouldiprefix und sie scheinen mit caniuse übereinzustimmen, aber gegeben, wie ähnlich die Namen sind, dachte ich, dass die gleiche Gemeinschaft/Firma beide Websites laufen kann. Sollte ich nur die anderen Präfixe entfernen?
Sehr seltsam und interessante Frage. Ich würde sagen, seine Art von * zittern * :) – Harry
Ich probierte einige Dinge aus und ich endete damit, Vorschläge zu machen, dass der Grund der Kreise "wackelig" oder Schütteln ist, ist die Frage der Maschine, die Radiusgrenze macht. Ich sah auch einen wackeligen Effekt, als ich versuchte, den Kreis zu zoomen, wenn ich die Codes über Chrome laufen ließ. Besseres Anti-Aliasing auf Chrom, vielleicht? –