【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

相关推荐
cyadyx15 小时前
Vite 比 Webpack 构建效率更高
前端·webpack·node.js·vite
mCell17 小时前
AI 时代 SVG 画图的潜力
前端·agent·svg
我命由我123451 天前
CesiumJS 笔记 - 获取容器中心点、Cartesian3 clone 方法、修改 Cartesian3 对象的高度
前端·javascript·css·前端框架·html·html5·js
Hopebearer_1 天前
页面突然只剩 DOM?一次静态资源版本错配排查
前端·部署
东风破_1 天前
ESLint 是什么?为什么你的项目需要它?
前端·后端·代码规范
圣殿骑士-Khtangc1 天前
Go字符串高效拼接性能对比与底层原理分析
服务器·前端·golang
BigTopOne1 天前
【ijkplayer】 硬解码流程
前端
kyriewen1 天前
DeepSeek Harness开源第一天我就上手了——和Claude Code的差距比想象中大
前端·ai编程·deepseek
捡田螺的小男孩1 天前
什么是 Skill?手把手带你写一个简单有用的 Skill!
前端·后端·程序员
IT_陈寒1 天前
Redis集群这个坑,差点让我通宵
前端·人工智能·后端