【CSS】简记CSS效果:通过transition(动画过渡属性)实现侧边栏目滑入滑出

需求

在资金明细的页面中,点击按钮时筛选区域从左侧滑出,完成筛选点击确认后调用接口完成数据查询,筛选区域滑入左侧;

基于微信小程序页面实现

wxml代码

复制代码
<view>
  <!-- 操作按钮 -->
  <button type="primary" bindtap="tapOpenSidebar">打开侧边栏目</button>
  <!-- 侧边栏目 -->
  <view class="sidebar-container {{is_show_sidebar ? 'show-sidebar' : ''}}">
    <button type="warn" bindtap="tapCloseSidebar">关闭侧边栏目</button>
    <!-- 其他内容根据实际设计内容填充 -->
  </view>
</view>

wxss代码

复制代码
.sidebar-container {
  height: 100vh;
  background: #F5F5F5;
  box-sizing: border-box;
  box-shadow: 1px 0px 1px #D7D7D7;
  border-top-right-radius: 30rpx;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 1;
  /* 设置元素过渡规则 */ 
  transition: width 0.2s ease-out, opacity 0.2s ease-in, visibility 0.2s ease-in;
  /* 过渡前的初始属性 */
  width: 0;
  visibility: 0;
  opacity: 0;
}
/* 过渡完成的属性 */
.show-sidebar {
  opacity: 1;
  visibility: 1;
  width: 80%;
}

js代码

复制代码
Page({

  /**
   * 页面的初始数据
   */
  data: {
    is_show_sidebar: false, // 控制侧边栏滑动开关
  },

  /**
   * 打开侧边栏目
   */
  tapOpenSidebar() {
    this.setData({is_show_sidebar: true})
  },

  /**
   * 关闭侧边栏目
   */
  tapCloseSidebar() {
    this.setData({is_show_sidebar: false})
  }
})

实现效果

实现参考其他博主文档

https://www.cnblogs.com/yadiblogs/p/10145625.html

相关推荐
brzhang42 分钟前
我写了个脚本,让AI每天自动看完热榜、写稿、配乐,还用我的声音读出来
前端·后端·架构
Mintopia1 小时前
Three.js 3D 图表与数据可视化:在数字宇宙中绘制数据星河
前端·javascript·three.js
米花丶2 小时前
前端 Service Worker最佳实践(上):高效的预缓存与运行时缓存方案
前端
困困的果果头2 小时前
【vue + element】el-table支持多层级合并列
前端·javascript·vue.js·elementui
GISer_Jing2 小时前
React前端与React Native移动端开发须知差异
前端·react native·react.js
G等你下课2 小时前
被低估的 CSS 核心!盒子模型如何撑起万亿级网页?
前端·css
只喜欢赚钱的棉花没有糖2 小时前
从loader和plugin开始了解webpack
前端·webpack
前端日常开发2 小时前
0 费用使用免费服务器部署 NestJS 项目
前端·后端
爱吃肉的小鹿2 小时前
JavaScript 中 return和break 的区别
前端