是否可以在页面加载5秒后隐藏元素? 希望通过CSS转换获得相同的结果。
有什么创新的想法吗?还是我的问题超出了CSS过渡/动画的限制?
发布于 2018-07-25 17:13:55
但是你不能以你可能立即想到的方式去做,因为你不能围绕你所依赖的属性动画或创建一个转换。display
,或更改维度并将其设置为overflow:hidden
)以正确隐藏元素并防止其占用可见空间。
因此,为所讨论的元素创建一个动画,然后简单地切换。visibility:hidden;
5秒后,同时将高度和宽度设置为零,以防止元素仍然占用DOM流中的空间。
CSS
html, body {
height:100%;
width:100%;
margin:0;
padding:0;
}
#hideMe {
-moz-animation: cssAnimation 0s ease-in 5s forwards;
/* Firefox */
-webkit-animation: cssAnimation 0s ease-in 5s forwards;
/* Safari and Chrome */
-o-animation: cssAnimation 0s ease-in 5s forwards;
/* Opera */
animation: cssAnimation 0s ease-in 5s forwards;
-webkit-animation-fill-mode: forwards;
animation-fill-mode: forwards;
}
@keyframes cssAnimation {
to {
width:0;
height:0;
overflow:hidden;
}
}
@-webkit-keyframes cssAnimation {
to {
width:0;
height:0;
visibility:hidden;
}
}
HTML
<div id='hideMe'>Wait for it...</div>
https://stackoverflow.com/questions/-100005750
复制相似问题