【发布时间】:2021-09-20 05:28:52
【问题描述】:
动画适用于折叠,但不适用于展开。
我为最大高度添加了 css 样式,但动画仅适用于菜单折叠。
<template>
<div>
<p>
<button @click="isShow = !isShow">click -- {{ isShow }}</button>
</p>
<ul ref="menu" :class="{ menu: true, fold: !isShow }">
<li>item1</li>
<li>item2</li>
<li>item3</li>
<li>item4</li>
</ul>
</div>
</template>
<script setup>
import { ref, reactive } from "vue";
const menu = ref("null");
const isShow = ref(true);
</script>
<style scoped>
.menu {
max-height: 300px;
transition: max-height 0.2s ease;
}
.menu.fold {
max-height: 0;
overflow: hidden;
transition: max-height 0.2s ease-out;
}
</style>
【问题讨论】: