首页 > web前端 > css教程 > 当动画元素具有'display: none;”时,如何在 CSS 中创建滑动动画?

当动画元素具有'display: none;”时,如何在 CSS 中创建滑动动画?

Barbara Streisand
发布: 2024-11-15 18:51:02
原创
645 人浏览过

How can you create a sliding animation in CSS when the animated element has `display: none;`?

与显示结合的 CSS 动画:无

您希望创建一个 CSS 动画,其中“main-div”在指定的持续时间,按下其路径中的其他 div。但是,将“main-div”的“display”属性设置为“none”会阻止动画触发。

要克服此限制,您不能直接在“display: none;”之间设置动画。和“显示:阻止;”或“高度:0;”之间和“高度:自动”。相反,您必须手动指定 div 的高度。

这是使用 vanilla CSS 的示例:

#main-image {
    height: 0;
    overflow: hidden;
   -moz-animation-delay: 3.5s;
   -webkit-animation-delay: 3.5s;
   -o-animation-delay: 3.5s;
    animation-delay: 3.5s;
}

@-prefix-keyframes slide {
  from {height: 0;}
  to {height: 300px;}
}
登录后复制

在此代码中,我们显式设置“主图像”的高度div 最初为 0 像素,有效地隐藏它。 “溢出:隐藏;”属性可防止任何内容溢出指定高度。

然后,我们使用 CSS 动画从初始高度 0 平滑过渡到所需高度 300px。 “animation-delay”属性确保动画在 3.5 秒延迟后开始。

使用这种方法,您可以创建滑动动画,而无需使用“display: none;”同时保持 CSS 提供的平滑过渡和精确计时。

以上是当动画元素具有'display: none;”时,如何在 CSS 中创建滑动动画?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板