解决uview中uni-popup弹出层不能设置高度问题

开发场景:点击条件筛选按钮,在弹出的popup框中让用户选择条件进行筛选

但是在iphone12/13pro展示是正常,但是切换至其他手机型号就填充满了整个屏幕,需要给这个弹窗设置一个固定的高度

iphone12/13pro与其他型号手机对比

一开始,我是在u-popup上设置的自定义样式

但是并没有实现我需要的

从网上查阅资料,发现可以在popup中嵌套的子级中,将里边的内容设置固定的高度,这样内容就不会超出去了。

最终效果:

完整代码附上:

复制代码
<!-- 弹出层 展示更多条件 -->
<u-popup :safeAreaInsetBottom="false"
  :show="showPopup" @close="closePopup" mode="bottom" @open="openPopup" :round="10" >
	<view class="ConditionPopup">
		<view v-for="(item,index) in conditionDataList" :key="index" class="ConditionPopup_list">
			<view class="ConditionPopup_list__title">{{item.title}}</view>
			<view class="ConditionPopup_list__content">
				<view @click="changeconditionitem(conditionDataList[index],items)" v-for="(items,indexs) in conditionDataList[index].list" :key="indexs" class="ConditionPopup_list__content_items" :class="items.check ? 'ConditionPopup_list__content_activeitems' : '' ">
					<view>{{items.text}}</view>
				</view>
			</view>
		</view>
		<view class="push-button">
			<u-button text="一键重置" @click="qxBtn"></u-button>
		</view>
		<view class="btnPopup">
			<u-button :customStyle="btnPopupqx" text="取消" @click="qxBtn"></u-button>
			<u-button :customStyle="btnPopupcx" text="查询" @click="searchBtn"></u-button>
		</view>
	</view>
</u-popup>

css部分

复制代码
// 条件弹出层
.ConditionPopup{
	box-sizing: border-box;
	padding: 15rpx 12rpx 4rpx 12rpx;
	height: 600rpx;
	overflow: auto;
	&_list{
		
		margin-bottom: 20rpx;
		
		&__title{
			font-size: 28rpx;
			font-weight: 600;
			color: #333333;
			margin-bottom: 15rpx;
		}
		&__content{
			display:flex;
			flex-wrap: wrap;
			
			&_items{
				padding: 24rpx 20rpx;
				background: #F1F1F1;
				border-radius: 6rpx;
				font-size: 26rpx;
				font-weight: 400;
				color: #666666;
				margin: 0 24rpx 24rpx 0;
			}
			
			&_activeitems{
				background: #00A39C;
				color: #FFFFFF;
			}
		}
		
	}
}
相关推荐
用户0595401744614 分钟前
把记忆存储的回归测试从手工换成 Playwright + GitHub Actions,线上缺陷降低 80%
前端·css
触底反弹19 分钟前
🚀 从 DOM0 级到 React 合成事件:前端事件监听的 20 年演进史
前端·react.js·面试
kyriewen24 分钟前
我给前端项目的接口请求套了6层保护——才发现以前一直在裸奔
前端·javascript·面试
颜酱25 分钟前
04 | 召回前置准备:搭好召回所需的四个数据库
前端·人工智能·后端
jieyucx2 小时前
Nuxt4阶段六:工程化与进阶 —— 模块、中间件、插件、TS 与测试
中间件·vue·web·nuxt·全栈·ssr
郝亚军2 小时前
如何安装webstorm、Node.js和vue CLI
前端·javascript·vue.js
IT_陈寒2 小时前
React的useEffect依赖项把我坑惨了
前端·人工智能·后端
jieyucx2 小时前
Nuxt4阶段五:渲染模式与性能优化
性能优化·vue·nuxt
东方小月2 小时前
从零开发一个Coding Agent:monorepo项目搭建
前端·后端·node.js
葬送的代码人生3 小时前
别再让 AI 瞎写代码了!Vibe Coding 三步法教你写出靠谱代码
前端·设计模式·架构