html - CSS 动画一开始没有隐藏

标签 html css animation

我想要一个div,里面有一个词。当 div 悬停在上面时,这个词应该与动画一起出现。这是我想要的动画和行为方式,除了......页面加载时可以看到“你好”这个词。我希望它被隐藏,然后动画显示。我需要修复什么?

#test{
  border: 1px solid #000;
}
#hello {
    animation-name: hello;
    animation-duration: 0.5s;
    animation-fill-mode: backwards;
    animation-play-state: paused;
}
#hello:hover {
   animation-fill-mode: forwards;
    animation-play-state: running;
    visibility: visible;
}

@keyframes hello {
    0%      {visibility:(hidden);transform:scale(0.5); opacity:(0.0);}
    1%      {visibility:(visible);}
    50%     {transform:scale(1.2); opacity:(0.5);}
    100%    {transform:scale(1.0); opacity:(1.0);}
}
<div id="test">
  <div id="hello">
    Hello!
  </div>
</div>

最佳答案

您只需从属性值中删除 () 即可,因为这会使它们无效。此外,最好更改动画 1% 的不透明度,以便能够看到缩放效果。

您还可以从 CSS 中删除 visiblity 属性,因为它没有用,因为您正在使用不透明度

#test {
  border: 1px solid #000;
  background:#fff;
  overflow:hidden; /* added this to avoid the scroll to appear and disappear*/
}

#hello {
  animation-name: hello;
  animation-duration: 0.5s;
  animation-fill-mode: backwards;
  animation-play-state: paused;
}

#test:hover #hello {
  animation-fill-mode: forwards;
  animation-play-state: running;
  /*visibility: visible; can be removed*/
} 

@keyframes hello {
  0% {
    /*visibility: hidden; can be removed*/
    transform: scale(0.5);
    opacity: 0;
  }
  1% {
    /*visibility: visible; can be removed*/
    opacity:0.3;
  }
  50% {
    transform: scale(1.2);
    opacity:0.5;
  }
  100% {
    transform: scale(1.0);
    opacity:1.0;
  }
}
<div id="test">
  <div id="hello">
    Hello!
  </div>
</div>

关于html - CSS 动画一开始没有隐藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47682074/

相关文章:

css - 如何防止一张表遵守 CSS 规则

user-interface - 可拖动和可滑动的容器

javascript - 如何使用 Javascript 检测 SVG 动画并显示/隐藏 Flash/SVG 对象?

javascript - 如何使用仅代码方法将 DOM 动画捕获为无损 60fps 视频

javascript - 允许滚动和单击以浏览重叠的 Div

css - 如何在不缓存 CSS 样式的情况下有条件地在 Next.js 中渲染组件?

javascript - HTML/JavaScript/Textarea - 如何找到调整大小的文本区域的行值

html - 我添加的 font-face 字体在 ie 中不显示

javascript - 如何在 Canvas 中创建具有厚度和内部图像的圆 Angular 矩形

php - 验证表单后禁用 Bootstrap 验证器