【发布时间】:2022-02-02 21:11:05
【问题描述】:
使用 Angular Material(第 10 版),我想为 mat-card 设置动画,以便在页面加载时垂直扩展至全高。
我已经尝试了一些仅使用悬停事件的测试(如果这可行,那么我将研究如何在页面加载时应用过渡 - 这是另一个故事),使用以下 CSS:
.test-anim {
height: 0!important;
transition: height 2s ease !important;
&:hover {
height: 100% !important;
}
}
<mat-card class="test-anim">
[some content...]
</mat-card>
不幸的是,这不起作用:
-
当我将鼠标悬停在
mat-card上时,卡片直接从 0 消耗到 100%,但完全没有过渡。顺便说一句,当我尝试从 Chrome 开发人员工具手动设置高度时,我意识到任何中间百分比(例如 50%)似乎都被视为 100%。只有 0% 与 100% 有区别。 (但是,动画使用不透明度而不是高度,并将 100% 替换为 1)。 -
我不能在过渡中使用
px值,因为垫卡的实际高度可能会因显示的数据而异。 -
即使我会使用
px值进行转换,它仍然不能完全工作:当我从 Chrome 开发人员工具手动设置高度(例如“30px”)时,卡片本身的大小实际上是正确的,但是它的内容显示在卡片之外(我本来希望mat-card本身对mat-card内容进行某种剪辑)。
你能帮帮我吗? 非常感谢!
【问题讨论】:
标签: css animation angular-material css-transitions mat-card