与直接变色不同,颜色是有一个从中间向两边过渡的动画效果
按照评论区的方法会出现下面bug
也就是先点击,然后马上滑动的时候,动画进行到一半就消失了,看起来效果很糟糕
但最上的示例图就不会出现这类问题……
与直接变色不同,颜色是有一个从中间向两边过渡的动画效果
按照评论区的方法会出现下面bug
也就是先点击,然后马上滑动的时候,动画进行到一半就消失了,看起来效果很糟糕
但最上的示例图就不会出现这类问题……
animation + keyframes
简易样例如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
<title>背景渐变动画</title>
<style type="text/css">
div {
width:300px;
height:48px;
background:#eee;
text-align:center;
}
div:active{
/*执行动画*/
animation:show 0.5s 1;
/*停止在最后一帧*/
animation-fill-mode:forwards;
}
@keyframes show{
10%{
background:radial-gradient(Circle,#999 40%, #999 40%, #eee 40%);
}
20%{
background:radial-gradient(Circle,#999 60%, #999 60%, #eee 60%);
}
40%{
background:radial-gradient(Circle,#999 80%, #999 80%, #eee 80%);
}
60%{
background:radial-gradient(Circle,#999 90%, #999 90%,, #eee 90%);
}
80%{
background:radial-gradient(Circle,#999 95%, #999 95%, #eee 95%);
}
100%{
background:radial-gradient(Circle,#999 100%, #999 100%, #eee 100%);
}
}
</style>
</head>
<body>
<div>内容</div>
</body>
</html>
10 回答11.3k 阅读
5 回答4.9k 阅读✓ 已解决
4 回答3.2k 阅读✓ 已解决
2 回答2.8k 阅读✓ 已解决
3 回答5.2k 阅读✓ 已解决
5 回答2.1k 阅读
1 回答3.4k 阅读✓ 已解决
伪类
+transform
简单实现了一下,细节自己处理一下