1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > css动画transition和animation实现遮罩动画

css动画transition和animation实现遮罩动画

时间:2018-12-27 14:40:20

相关推荐

css动画transition和animation实现遮罩动画

用两种属性实现遮罩动画

transition在hover和移开的时候都会有渐变动画animation只有在hover的时候有渐变动画,移开图片遮罩层直接消失

<ul class="other-skin"><li><a class="item" href="#"><img src="./img/xiahoudun.jpg" alt=""><div class="mask">匿光决锋者-夏侯惇</div></a></li><li><a class="item" href="#"><img src="./img/ailin.jpg" alt=""><div class="mask">匿光决锋者-夏侯惇</div></a></li><li><a class="item" href="#"><img src="./img/mingshiyin.jpg" alt=""><div class="mask">匿光决锋者-夏侯惇</div> </a></li><li><a class="item" href="#"><img src="./img/baiqi.jpg" alt=""><div class="mask">匿光决锋者-夏侯惇</div></a></li></ul>

用transition实现

设置正常状态opacity为0 opacity:0hover状态opacity为1opacity:1在正常状态设置要改变的值(可以写all代表全部)动画时间 动画 transition:opacity 300ms ease-in

.other-skin .item .mask {display: flex;//透明度为0opacity: 0;background-color: rgba(0, 0, 0, .88);//添加opacity动画 也可以写alltransition: opacity 300ms ease-in;}.other-skin .item:hover .mask {opacity: 1;}

用animation实现

设置正常状态不可见display:none设置动画名与动画过程 @keyframes maskframes{}设置hover状态可见,并且加上动画 display:flex animation:maskframes 300ms ease-in

.other-skin .item .mask {//正常状态不可见display: none;background-color: rgba(0, 0, 0, .88);}@keyframes maskframes {0% {opacity: 0;}100% {opacity: 1;}}.other-skin .item:hover .mask {//在hover状态可见 并且添加maskframes的动画display: flex;animation: maskframes 300ms ease-in-out forwards;}

transition写起来方便一点,但是必须要有事件触发,而且一般是只执行一次

animation写起来麻烦一点,可以重复执行多次

根据具体的需求选择动画属性

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。