与直接变色不同,颜色是有一个从中间向两边过渡的动画效果
按照评论区的方法会出现下面bug
也就是先点击,然后马上滑动的时候,动画进行到一半就消失了,看起来效果很糟糕
但最上的示例图就不会出现这类问题……
与直接变色不同,颜色是有一个从中间向两边过渡的动画效果
按照评论区的方法会出现下面bug
也就是先点击,然后马上滑动的时候,动画进行到一半就消失了,看起来效果很糟糕
但最上的示例图就不会出现这类问题……
伪类
+transform
简单实现了一下,细节自己处理一下
<style>
.demo, .demo li {
list-style: none;
margin: 0;
padding: 0;
}
.demo li {
width: 500px;
height: 100px;
background: #eee;
border-top:#ddd solid 1px;
position:relative;
}
.demo li:before{
content: '';
position:absolute;
left: 50%;
transform: translateX(-50%);
top: 0;
bottom: 0;
width: 80%;
background: #ddd;
border-radius: 50px;
transition: 0.1s ease-out;
opacity: 0;
}
.demo li:active:before {
width: 100%;
border-radius: 0;
opacity: 1;
}
</style>
<ul class="demo">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
7 回答1.9k 阅读✓ 已解决
12 回答4.4k 阅读
11 回答2.8k 阅读
5 回答1.8k 阅读✓ 已解决
3 回答1.5k 阅读✓ 已解决
11 回答1.3k 阅读
4 回答976 阅读✓ 已解决
animation + keyframes
简易样例如下: