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计算,因此不会引发动画过渡

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

相关推荐
我爱写代码i9 小时前
AI对话绘画数字人源码 - uniapp前端
前端·人工智能·uni-app
ModyQyW9 小时前
vite-plugin-uni-pages 更新了什么
前端·uni-app
吴长建先生重名了15 小时前
用 MinIO 分布式存储模块一次讲清代码重构与整洁代码实
css
cindershade15 小时前
把响应式做成可验证的状态切换:Container Queries 的组件级重构方法
css·flexbox·前端工程化
2501_9159184117 小时前
Flutter项目配置iOS混淆的详细步骤与工具推荐
android·flutter·ios·小程序·uni-app·cocoa·iphone
梦曦i17 小时前
create-uni-app v1.2.0:交互体验优化
前端·uni-app
平头哥~18 小时前
Day 15 | 不改一行 HTML,给页面加上引号、角标和标签
前端·javascript·css·html·css3·学习资料
平头哥~1 天前
Day 07 _ 那条 1px 的线,为什么在手机上忽粗忽细
前端·css·样式·学习资料
小江的记录本1 天前
【CSS】CSS 动画:transition、animation、transform、CSS3 新特性(附《思维导图》)
前端·css·安全·spring·前端框架·css3·动画
lhldsg1 天前
智慧场馆解决方案小程序开发实战:从架构设计到部署指南
java·小程序·uni-app