【发布时间】:2016-09-03 14:30:20
【问题描述】:
我有一个保存按钮,当需要保存表单时会跳动。
CSS:
@keyframes pulse-scale {
from { transform: scale(1); }
to { transform: scale(1.1); }
}
.btn-alert {
animation: 1s pulse-scale ease-out infinite alternate;
}
HTML:
<button class="btn btn-round btn-alert">
<i class="fa fa-check"></i>
</button>
问题是它在 Chrome 49 中表现不佳。我确信它曾经很好,但现在随着它的缩放,它似乎捕捉到某些像素对齐的比例,并在模糊和锐利之间切换,导致“生涩”的动画。 在 Firefox 38 中似乎没问题 在 Firefox 38 中,它最初可以正常播放,但在等待一段时间(?)或切换到另一个窗口并返回后,它的播放效果也很差。
需要明确的是,这是一个图像采样(质量)问题,而不是帧率(速度)问题。这是一个关于它的外观的视频。从左到右:Firefox、几分钟后的 Firefox、Chrome。只有左边的播放正确。
有没有我可以设置的 CSS 属性让它更好玩 - 例如强制它使用不同的插值模式?我在关键帧上尝试了adding translateZ(0),但似乎没有帮助。
Demo in JSFiddle
【问题讨论】:
-
你试过@-webkit- to 吗?
-
@AdnanAkram 我试过
-webkit-transform和-webkit-animation- 你是这个意思吗?但是根据开发工具,我的浏览器会忽略这些属性(被transform和animation取代)。 -
在我看来是不是很生涩?不过我在 Chrome 50 上。你说的“生涩”是什么意思?您是否也尝试过使用
ease-out并尝试其他一些设置?另外,当您可以使用transition时,为什么还要使用animation? -
@aug 我的意思是图像质量很差,而且它似乎在播放时左右移动。用视频更新了问题。在 Chomium/Linux 和我的同事在 Chrome/OS X 上它很生涩。但 Safari 很好。过渡可以重复(循环播放)吗?
-
@DaniSpringer.com CSS 效果:参见演示。错误:在旧版 Chrome 中运行。制作动画:屏幕截图和 ImageMagick。嵌入图像:获得更多声誉,也许:)
标签: css google-chrome css-animations