通过css控制div内容展开更多/收起效果

1. 需求效果图

实际效果如下:
在这里插入图片描述
在这里插入图片描述

2. 实现思路

1. 需要设置一个变量控制展开 / 收起效果
2. 提前写好最高高度的class样式,超出这个高度多余内容会隐藏
3. 只有在列表数据长度大于3的时候,才会显示展开 / 收起按钮

3. 代码实现

 <!-- 通过变量控制class样式 -->
 <view :class="isHide ? 'maxHeight' : ''">
   <view v-for="(item, index) in addressList" :key="index" class="itemAddress">
     <view class="userInfo">
       <text class="username">{{ item.username}}</text>
       <u--text format="encrypt" mode="phone" :text="item.phone"></u--text>
     </view>
   </view>
    <view class="address u-line-1">{{ item.address }}</view>
 </view>
  <!-- 注意 按钮div和地址列表div同一个层级-->
 <!-- 大于3条显示控制按钮,通过变量控制按钮文字 -->
 <view v-if="addressList.length > 3" class="moreCon" @click="getMoreAddress">
    <text class="txt">{{ isHide ? '展示更多' : '收起全部' }}地址 </text>
     <!--控制图标 -->
    <u-icon v-if="isHide" name="arrow-down" color="#333" size="11"></u-icon>
    <u-icon v-else name="arrow-up" color="#333" size="11"></u-icon>
 </view>
 <script>
 export default {
  data() {
    return {
      isHide: true, //初始值为true,显示为折叠画面
      addressList: [],
    }
  },
  methods:{
   getMoreAddress() {
      this.isHide = !this.isHide
    },
  }
}
 </script>
 /* 通过高度控制内容的展示隐藏*/
 .maxHeight {
    height: auto;
    max-height: 400upx;
    overflow: hidden;
  }

可参考:
通过css实现展示更多选项和收起
css怎么实现超出范围加滚动条

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

铁锤妹妹@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值