uniapp 折叠动画 <transition> 踩坑记录

一.问题复现

<transition name="collapse">

<view v-show="isOpen" class="collapse-grid">

<view v-for="n in [11,12]" :key="n" class="tool-item">功能{{ n }}</view>

</view>

</transition>

css 复制代码
.collapse-grid {
    width: 100%;
    background: red;
// 这里如果加flex 布局, 里面的内容会直接出来,不受折叠面板控制
    display: flex;
}


.collapse-enter-active,
.collapse-leave-active {
  transition: max-height 0.6s ease-in-out, opacity 0.6s ease-in-out;
  overflow: hidden;
}
.collapse-enter-from,
.collapse-leave-to {
  max-height: 0;
  opacity: 0;
}
.collapse-enter-to,
.collapse-leave-from {
  max-height: 600rpx;
  opacity: 1;
}

原因是 在小程序中,父容器是flex时,子元素的max-height变化不会触发布局动画

子元素的max-height不参与flex计算,因此不会引发动画过渡

动画帧直接跳到了最终状态,看起来就是无动画

相关推荐
球球pick小樱花15 小时前
游戏官网前端工具库:海内外案例解析
前端·javascript·css
Mr_li15 小时前
给 Vue 开发者的 uni-app 快速指南
vue.js·uni-app
anyup18 小时前
🔥2026最推荐的跨平台方案:H5/小程序/App/鸿蒙,一套代码搞定
前端·uni-app·harmonyos
AAA阿giao2 天前
从零构建一个现代登录页:深入解析 Tailwind CSS + Vite + Lucide React 的完整技术栈
前端·css·react.js
Mintopia2 天前
Vue3 项目如何迁移到 uni-app x:从纯 Web 到多端应用的系统指南
uni-app
Mintopia2 天前
uni-app x 发展前景技术分析:跨端统一的新阶段?
uni-app
掘金安东尼2 天前
用 CSS 打造完美的饼图
前端·css
掘金安东尼2 天前
纯 CSS 实现弹性文字效果
前端·css
不爱说话郭德纲3 天前
告别漫长的HbuilderX云打包排队!uni-app x 安卓本地打包保姆级教程(附白屏、包体积过大排坑指南)
android·前端·uni-app
前端Hardy3 天前
HTML&CSS&JS:打造丝滑的3D彩纸飘落特效
前端·javascript·css