带有固定阴影的 CSS 下拉动画

标签 css animation css-animations shadow angular-animations

我想制作一个“冲压”动画,已经到了以下几点:

div {
  height: 75px;
  width: 75px;
  background-color: brown;
  border: 4px dashed black;
  border-radius: 50%;
  position: absolute;
  left: 200px;
  top: 40px;
  overflow: hidden;
  animation: drop 3s forwards;
}

@keyframes drop {
  from {
    opacity: .25;
    transform-origin: 50% 50%;
    transform: rotate(25deg) scale(5) translate(-40px, 70px);
    transition: all ease-in;
    filter: drop-shadow(-4px -20px 4px black);
  }
  to {
    opacity: .8;
    transform: rotate(-15deg) scale(1);
    filter: drop-shadow(0 4px 4px black);
  }
}
<div></div>

阴影看起来不错,但我认为如果有一种方法会很酷,所以它一开始是静止的、大的和模糊的,但随着圆圈越来越近,它变得更加精致——就像有一个邮票将要击中/着陆的地方的轮廓(就像在视频游戏中一样)。

如何才能做到这一点?就此而言,这是好的用户体验吗?

我想使用它的应用程序是 Angular,因此使用 Angular 的动画(或纯 javascript)的解决方案也很好。

最佳答案

这是你想要的吗?只需将阴影偏移设置为您定义的翻译:-40px, 70px

div {
  height: 75px;
  width: 75px;
  background-color: brown;
  border: 4px dashed black;
  border-radius: 50%;
  position: absolute;
  left: 200px;
  top: 40px;
  overflow: hidden;
  animation: drop 3s forwards;
}

@keyframes drop {
  from {
    opacity: .25;
    transform-origin: 50% 50%;
    transform: rotate(25deg) scale(5) translate(-40px, 70px);
    transition: all ease-in;
    
    filter: drop-shadow(40px -70px 20px black);
  }
  to {
    opacity: .8;
    transform: rotate(-15deg) scale(1);
    filter: drop-shadow(0 4px 4px black);
    
  }
}
<div></div>

关于带有固定阴影的 CSS 下拉动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58921945/

相关文章:

css - stylelint 规则黑名单特定选择器

css - 如何使用 GWT 2.4 对带边框的小部件进行垂直布局?

php - CSS 背景不透明度动画

ios - 在旋转的上下文中理解 CGAfflineTransform

css - 使用具有渐变背景的 CSS3 过渡

html - 如何在访问链接后停止超链接上的 CSS 动画?

css - modalpopup 的模态效果

html - 根据第二个 div 的宽度导致第一个 div 溢出

firefox - CSS3 动画只适用于 webkit?

javascript - 通过单击按钮重复动画