vue 折叠面板,按照高度折叠
时间: 2023-08-17 12:10:03 浏览: 154
你可以使用 Vue 的折叠面板组件来实现按照高度折叠的效果。以下是一个简单的示例:
```html
<template>
<div>
<button @click="toggleCollapse">折叠/展开</button>
<transition name="collapse">
<div v-if="isCollapsed" class="collapse-content">
<!-- 折叠的内容 -->
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec vitae ipsum eu metus consectetur ultricies.
</div>
</transition>
</div>
</template>
<script>
export default {
data() {
return {
isCollapsed: false
};
},
methods: {
toggleCollapse() {
this.isCollapsed = !this.isCollapsed;
}
}
};
</script>
<style>
.collapse-content {
max-height: 0;
overflow: hidden;
transition: max-height 0.3s ease-out;
}
.collapse-enter-active,
.collapse-leave-active {
transition: max-height 0.3s ease-out;
}
.collapse-enter,
.collapse-leave-to {
max-height: 500px; // 设置一个足够大的高度
}
</style>
```
在上述示例中,我们使用了 Vue 的过渡动画和样式来实现折叠效果。点击按钮时,`toggleCollapse` 方法会切换 `isCollapsed` 的值,从而控制折叠内容的显示与隐藏。样式中的 `max-height` 属性被动态修改,实现了根据内容高度进行折叠的效果。你可以根据需要调整最大高度值和过渡动画的持续时间。
阅读全文