【发布时间】:2015-08-31 14:05:31
【问题描述】:
我正在尝试在 不使用 Javascript 的情况下实现一些动画 onLoad。 JS 很简单,CSS 很简单。
我有一个div,它应该在display: none; 上,3 秒后应该是display: block;。很多资源告诉我 animate 不适用于 display,但应该适用于 visibility(我在过渡中经常使用它)。
知道我有这个糟糕的javascript函数:
<script type="text/javascript">
$(document).ready(function(){
$(".js_only").hide();
setTimeout(function () {
$(".js_only").show();
}, 3000);
});
</script>
我在 CSS 中尝试了一些动画,但没有结果……似乎没有任何效果。
我的页面中几乎没有动画,但只是在动画中遇到display: none;。
@-moz-keyframes showEffect {
0% { display: none; visibility: hidden; }
100% { display: block; visibility: block; }
}
@-webkit-keyframes showEffect {
0% { display: none; visibility: hidden; }
100% { display: block; visibility: block; }
}
@keyframes showEffect {
0% { display: none; visibility: hidden; }
100% { display: block; visibility: block; }
}
.css_only {
-moz-animation-name: showEffect;
-moz-animation-iteration-count: 1;
-moz-animation-timing-function: ease-in;
-moz-animation-duration: 2.3s;
-webkit-animation-name: showEffect;
-webkit-animation-iteration-count: 1;
-webkit-animation-timing-function: ease-in;
-webkit-animation-duration: 2.3s;
animation-name: showEffect;
animation-iteration-count: 1;
animation-timing-function: ease-in;
animation-duration: 2.3s;
}
隐藏很重要,这个元素根本不占用空间。 I created a JSFiddle 进行相当的测试。
我主要关注的是 SEO ...我不认为 JS 选项真的很好,这就是为什么我想要一个纯 CSS 替代品。也有兴趣测试这些动画,看看这些限制在哪里(我现在看到了吗?)。在这样的挑战中玩得很开心。
感谢阅读,希望有人解答。
【问题讨论】:
标签: css css-animations