当前位置: 首页 > web >正文

uniapp 小程序 CSS 实现多行文本展开收起 组件

效果

在这里插入图片描述
在这里插入图片描述

组件

<template><!-- 最外层弹性盒子 --><div class="box" :style="boxStyle"><!-- 文本区域,动态类名控制展开/收起状态 --><div ref="textRef" :class="['text-cont', btnFlag ? 'text-unfold' : 'text-collapse']"><!-- 展开/收起按钮 --><div class="unfold-and-collapse" @click="btnFlagChange">{{ btnFlag ? '收起' : '展开' }}</div><!-- 文本内容(保留首行缩进) -->&emsp;&emsp;{{ text }}</div></div>
</template><script>export default {name: 'ExpandableText',props: {text: {type: String,default: ''},boxStyle: {type: String,default: ''}},data() {return {// 展开收起状态btnFlag: false}},methods: {// 切换展开/收起状态 btnFlagChange() {this.btnFlag = !this.btnFlag}}}
</script><style scoped>/* 最外层开启弹性盒子,用于伪元素的高度计算 */.box {display: flex;}/* 文本区域设置宽度,显示省略号 */.text-cont {width: 100%;margin: 0px auto 0;display: -webkit-box;/* 必须结合的属性,设置或检索伸缩盒对象的子元素的排列方式 */-webkit-box-orient: vertical;/* 溢出部分隐藏 */overflow: hidden;/* 文字居左 */text-align: left;font-family: PingFangSC, PingFang SC;font-weight: 500;font-size: 26rpx;color: #000000;line-height: 44rpx;font-style: normal;}/* 展开状态 - 显示所有行 */.text-unfold {-webkit-line-clamp: 9999;}/* 收起状态 - 只显示3行 */.text-collapse {-webkit-line-clamp: 3;}/* 展开/收起按钮样式 */.unfold-and-collapse {color: #19aaff;float: right;clear: both;margin-right: 10px;cursor: pointer;font-size: 26rpx;line-height: 44rpx;margin-top: -6rpx;}/* 伪元素用于实现文字包裹按钮 */.text-cont::before {content: "";float: right;width: 0;height: calc(100% - 20px);}
</style>
http://www.xdnf.cn/news/7312.html

相关文章:

  • Python元组全面解析:从入门到精通
  • VS2017编译openssl3.0.8
  • Qt读取Excel文件的技术实现与最佳实践
  • iOS解码实现
  • Scala与Spark:原理、实践与技术全景详解
  • 仿腾讯会议——添加音频
  • 百度飞桨OCR(PP-OCRv4_server_det|PP-OCRv4_server_rec_doc)文本识别-Java项目实践
  • 软件设计师SQL考点分析——求三连
  • vue2.0 组件之间的数据共享
  • std::ranges::views::stride 和 std::ranges::stride_view
  • Axure跨页面交互:利用IFrame和JS实现父子页面菜单联动
  • AWS EKS IP 耗尽:原因、解决方案和最佳实践
  • MongoDB的管道聚合
  • RHCE 练习三:架设一台 NFS 服务器
  • C语言学习笔记之条件编译
  • vue3 在线播放语音 mp3
  • 类和对象(3)--《Hello C++ World!》(5)(C/C++)--构造函数,析构函数和拷贝构造函数
  • Windows中PDF TXT Excel Word PPT等Office文件在预览窗格无法预览的终级解决方法大全
  • .NET外挂系列:2. 了解强大的 harmony 注解特性
  • 20.自动化测试框架开发之Excel配置文件的IO开发
  • 无需笔墨之功,锦绣SQL自成桥——QuickAPI古法炼数据秘术
  • 企业标准信息公共服务平台已开放标准通编辑器访问入口
  • 可视化图解算法41:搜索二维矩阵(二维数组中的查找)
  • 分布式ID生成系统
  • 深入解析OkHttp与Retrofit:Android网络请求的黄金组合
  • 深度解析:Redis 性能优化全方位指南
  • 在windows下安装windows+Ubuntu16.04双系统(上)
  • leetcode3265. 统计近似相等数对 I-medium
  • 编程技能:字符串函数07,strncat
  • C++跨平台开发经验与解决方案