css - 由firefox而不是chrome反转的css旋转动画
问题描述
<div class='box'></div>
<style>
.box{
background: linear-gradient(90deg, red 0%, blue 50%);
width: 50px ;
height:50px;
margin-left:auto;
margin-right:auto;
left: 0px;
right:0px;
transform: translateY(-50%);
position: absolute;
top: 50%;
-webkit-animation: square-animatee 3.5s .1s linear infinite;
-moz-animation: square-animate 3.5s .1s linear infinite;
-o-animation: square-animate 3.5s .1s linear infinite;
animation: square-animate 3.5s .1s linear infinite;
}
@keyframes square-animate {
5% {
-webkit-transform: translateY(25%) rotate(22.5deg);
-moz-transform: translateY(25%) rotate(22.5deg);
-o-transform: translateY(25%) rotate(22.5deg);
transform: translateY(25%) rotate(22.5deg);
}
7% {
border-bottom-right-radius: 100%;
-webkit-transform: translateY(50%) scale(1, .9) rotate(40deg);
-moz-transform: translateY(50%) scale(1, .9) rotate(40deg);
-o-transform: translateY(50%) scale(1, .9) rotate(40deg);
transform: translateY(50%) scale(1, .9) rotate(40deg);
}
10% {
-webkit-transform: translateY(25%) rotate(60deg);
-moz-transform: translateY(25%) rotate(60deg);
-o-transform: translateY(25%) rotate(60deg);
transform: translateY(25%) rotate(60deg);
}
15% {
-webkit-transform: translateY(0) rotate(90deg);
-moz-transform: translateY(0) rotate(90deg);
-o-transform: translateY(0) rotate(90deg);
transform: translateY(0) rotate(90deg);
border-bottom-right-radius: 10%;
}
25%{
-webkit-transform: scale(1, .9) rotate(140deg);
-moz-transform: scale(1, .9) rotate(140deg);
-o-transform: scale(1, .9) rotate(140deg);
transform: scale(1, .9) rotate(140deg);
}
45%{
-webkit-transform: translateY(5%) rotate(280deg);
-moz-transform: translateY(25%) rotate(280deg);
-o-transform: translateY(25%) rotate(280deg);
transform: translateY(25%) rotate(280deg);
border-bottom-left-radius: 10%;
}
50%{
-webkit-transform: translateY(50%) rotate(300deg);
-moz-transform: translateY(50%) rotate(300deg);
-o-transform: translateY(50%) rotate(300deg);
transform: translateY(50%) rotate(300deg);
border-bottom-left-radius: 100%;
}
54%{
-webkit-transform: translateY(25%) rotate(360deg);
-moz-transform: translateY(25%) rotate(360deg);
-o-transform: translateY(25%) rotate(360deg);
transform: translateY(25%) rotate(360deg);
}
60%{
-webkit-transform: translateY(0%) rotate(420deg);
-moz-transform: translateY(0%) rotate(420deg);
-o-transform: translateY(0%) rotate(420deg);
transform: translateY(0%) rotate(420deg);
border-bottom-left-radius: 10%;
}
80%{
-webkit-transform: translateY(0%) rotate(520deg);
-moz-transform: translateY(0%) rotate(520deg);
-o-transform: translateY(0%) rotate(520deg);
transform: translateY(0%) rotate(520deg);
}
90%{
-webkit-transform: translateY(-10%) scale(1, 1.5) rotate(1050deg);
-moz-transform: translateY(-10%) scale(1, 1.5) rotate(1050deg);
-o-transform: translateY(-10%) scale(1.5, 1.5) rotate(1050deg);
transform: translateY(-10%) scale(1.5, 1.5) rotate(1050deg);
}
95%{
-webkit-transform: translateY(-20%) rotate(1060deg);
-moz-transform: translateY(-20%) rotate(1060deg);
-o-transform: translateY(-20%) rotate(1060deg);
transform: translateY(-20%) rotate(1060deg);
}
100%{
-webkit-transform: translateY(0%) rotate(1080deg);
-moz-transform: translateY(0%) rotate(1080deg);
-o-transform: translateY(0%) rotate(1080deg);
transform: translateY(0%) rotate(1080deg);
}
}
</style>
这是代码笔:
https://codepen.io/GrandDominus/pen/yLMPRrx
在 Firefox 中,正方形的旋转中途反转。但在 Chrome 中它很好。如何强制 firefox 继续沿同一方向旋转?
Stackoverflow 提示我“看起来您的帖子主要是代码;请添加更多详细信息。”。我不知道如何进一步阐述这个问题,因为这个问题很简单,所以我在这里输入这个文本。
解决方案
推荐阅读
- node.js - 在猫鼬查询中插入字符串以使其通用
- php - PHP - 将文本转换为 Unicode
- android - 谷歌地图点击兴趣点在Android和IOS上返回不同的placeId
- excel - VBA - 使用插入的行应用自动填充(基于输入框)并将其应用到其他工作表
- django - 每次我输入提交时,Is_valid 似乎都不是真的
- python-3.x - AssertionError:某些对象具有未恢复的属性
- vue.js - Vue div 文本没有动态更新
- c++ - 在 s-function 中将字符串数组作为参数传递
- google-pagespeed - pagespeed FCP 值:为什么不采用实验室值?
- slack - 使用 Slack App 统计所有用户的消息