使用CSS3做了如下文字切换的效果,通过给元素设置 active 、 disappear class, 配合animation实现动画:

animation 代码如下:
@keyframes transfromAnimate {
from {
opacity: 0;
transform:translate3d( 0, 16px, 0);
}
to {
opacity: 1;
transform:translate3d( 0, 0px, 0);
}
}
@keyframes transfromAnimate2 {
from {
opacity: 1;
transform:translate3d( 0, 0px, 0);
}
to {
opacity: 0;
transform:translate3d( 0, 16px, 0);
}
}
此处执行animation动画时,页面其他文字出现如下文字模糊问题:

此处代码如下:
.legend {
position: absolute;
right: 24px;
bottom: 36px;
display: flex;
/* z-index: 100; */
.legendItem {
display: flex;
align-items: center;
margin-right: 20px;
opacity: 0.4;
}
}
解决办法: 在.legend内添加z-index后模糊效果消失。
原理参考:
张鑫旭: 深入理解CSS中的层叠上下文和层叠顺序
很好玩:CSS动画原理及硬件加速
本文介绍使用CSS3实现文字切换动画时遇到的文字模糊问题及其解决方案。通过添加z-index属性,解决了执行animation动画时页面其他文字出现模糊的现象。文章还提供了关于CSS层叠上下文和层叠顺序的深入理解链接。
997

被折叠的 条评论
为什么被折叠?



