angular - 来自“下方”视口的角度动画幻灯片在反弹时留下间隙
问题描述
我正在研究 SPA(Angular 和 Bootstrap),并试图在 UI 中包含一些动画,以吸引用户注意传入的表单。我已经很好地解决了这个问题,但是有一个我不确定如何解决的小调整。
我的动画本质上是在用户与页面上的某些元素交互时从网页“下方”滑入粘性页脚。需要明确的是,动画正在运行。
我面临的挑战是我已经让滑入式动画“弹跳”了一点,例如比它的最终静止位置更远一点,然后又回来。问题是,当它超出其最终静止位置时,页脚元素的底部超出屏幕的底部边缘,您可以看到它“下方”到它后面的元素。我不希望这种情况发生,只需拉伸背景颜色。
这是我在 Angular 中的动画:
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
animations: [
trigger('flyInOut', [
transition(':enter', [
animate('300ms ease-in-out', keyframes([
style({ transform: 'translateY(100%)' }),
style({ transform: 'translateY(50%)' }),
style({ transform: 'translateY(25%)' }),
style({ transform: 'translateY(0)' }),
// A little bounciness
style({ transform: 'translateY(-10%)' }),
style({ transform: 'translateY(0)' }),
])),
]),
transition(':leave', [
animate('250ms ease-in-out', keyframes([
style({ transform: 'translateY(0)' }),
style({ transform: 'translateY(25%)' }),
style({ transform: 'translateY(50%)' }),
style({ transform: 'translateY(100%)' }),
])),
])
])
]
})
我正在制作动画的 HTML 元素:
<footer class="footer shadow-lg fixed-bottom border bg-light" @flyInOut *ngIf="this.selectedResourcesCount > 0 && !this.formSubmitted">
<div class="container">
<form [formGroup]="form" class="send-form" (submit)="onSendResources()">
<!-- form elements, etc.. -->
</form>
</div>
</footer>
您可以在此 GIF 示例中看到,其中一张卡片中的文本显示为“反弹”出现在页脚元素上。
我试过弄乱一些高度、填充、边距等,但它要么不能达到我的目标,要么会对页脚的内部元素产生负面影响。诚然,在我尝试的同时,我不是 CSS 专家,并且希望可能有一个简单的解决方案。
解决方案
推荐阅读
- python - 如何从 Python 获取文件中的最后一个字符?
- swift - 为什么我会收到此错误“无法分配给属性:'blurb' 是一个只能获取的属性”-SwiftUI
- windows - 打包的电子应用程序无法在 win32 中打开
- linux - 使用 AT_EXECFN 提取可执行文件时的文件名大小限制
- c++ - 解析用户输入以调用正确的重载函数
- java - 为什么 JavaFX 中的某些文本边界不一致,我该如何避免?
- reactjs - 设置状态变量没有效果
- gmail - 尝试从 C# 应用程序连接到 Gmail 时出现身份验证错误,但没有安全警报电子邮件
- ios - SceneKit - 不同平面的纹理映射
- apache-spark-sql - 无法从 spark 数据帧转换为 AWS Glue 动态帧