【发布时间】:2019-11-22 04:58:31
【问题描述】:
我在 vuejs 中创建了一个小脚本。这是一个对话框,可以在事件发生时动态更改视图。
https://codepen.io/anon/pen/zWpVvW
如您所见,当组件更改时,我有一个不错的 1s 淡入淡出过渡。 但是我的两个组件的大小都不相同。一种是单线,另一种是多线。因此对话框的高度是不一样的。您可以在我的代码笔上看到,当从一个视图转换到另一个视图时,窗口的高度从小到大“跳跃”。我正在努力实现平稳过渡。
我的想法是使用 flexbox。 对话框和卡片已配置为垂直弹性框。 card 和 card__text 已经配置了 2s 的过渡和 1 的 flex-grow。
.dialog {
display: flex;
flex-direction: column;
}
.card {
flex: 1 1 1;
display: flex;
flex-direction: column;
transition: all 2s ease;
}
.card__text {
flex: 1 1 1;
transition: all 2s ease;
}
不幸的是,对话框仍然无法顺利调整大小。我很确定这可以通过 CSS 解决,但我找不到方法。
有什么想法吗? 非常感谢!
【问题讨论】:
标签: css flexbox css-transitions