gpt4 book ai didi

html - 如何获得关键帧动画?

转载 作者:行者123 更新时间:2023-12-03 16:17:46 28 4
gpt4 key购买 nike

我正在尝试制作涟漪效果的动画。在chrome浏览器上似乎可以正常工作,但不能在safari上工作,而且我在同一页面上还有其他动画在chrome和safari上都可以正常工作,但不是这个动画。我想知道我做错了什么。

我尝试对其进行调试,然后可以看到Safari Graphic Tab中显示一条消息,内容为

"This animation has no keyframes"



我的CSS代码:

.ripple-animation {
&::after {
@include rings(2s, 40s);
}
&::before {
@include rings(2s, 40s);
}
}

@mixin rings($duration, $delay) {
opacity: 0.5;
// display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
position: absolute;
top: -8px;
left: -10px;
right: 0;
bottom: 0;
content: '';
height: 120%;
width: 110%;
border: 4px solid rgba(0, 0, 0, 0.4);
border-radius: 100%;

-webkit-animation-name: ripple;
-webkit-animation-duration: $duration;
-webkit-animation-delay: $delay;
-webkit-animation-iteration-count: infinite;
-webkit-animation-timing-function: cubic-bezier(.65, 0, .34, 1);

animation-name: ripple;
animation-duration: $duration;
animation-delay: $delay;
animation-iteration-count: infinite;
animation-timing-function: cubic-bezier(.65, 0, .34, 1);

}

@-webkit-keyframes ripple {
from {
opacity: 1;
-webkit-transform: scale3d(0.8, 0.8, 0.5);
transform: scale3d(0.8, 0.8, 0.5);
}
to {
opacity: 0;
-webkit-transform: scale3d(1.1, 1.1, 1);
transform: scale3d(1.1, 1.1, 1);
}

}

@keyframes ripple {
from {
opacity: 1;
-webkit-transform: scale3d(0.8, 0.8, 0.5);
transform: scale3d(0.8, 0.8, 0.5);
}
to {
opacity: 0;
-webkit-transform: scale3d(1.1, 1.1, 1);
transform: scale3d(1.1, 1.1, 1);
}
}

最佳答案

原因可能是您的浏览器不支持该代码中使用的。在动画和过渡中,“某物”实际上是伪元素::before::after

即使使用-webkit,也没有Safari浏览器支持此功能。 Safari iOS也是如此。

跨浏览器对 ::before ::after 的动画和过渡支持。

关于html - 如何获得关键帧动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61950865/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com