uniapp出现 下拉框等组件被遮挡 的分析

news2024/9/28 11:55:17

目录

  • 1. 问题所示
  • 2. 代码复现
  • 3. 解决方法
    • 3.1 下拉框被遮挡
    • 3.2 uni-collapse-item 无法下拉的问题

1. 问题所示

下拉框被遮挡的问题:

在这里插入图片描述

uni-collapse-item组件无法下拉的问题:

在这里插入图片描述

2. 代码复现

博主的代码精简如下:

<template>
	<view>
		<uni-forms v-model="ArchiveVO">
			<uni-collapse style="overflow: visible;">			
				<uni-collapse-item title="桥吊情况" :open="false">
					<view class="collapse-item-content">
						<uni-forms-item label="船上桥吊数量">
							<uni-easyinput v-model="ArchiveVO.onboardCrane"></uni-easyinput>
						</uni-forms-item>
						<uni-forms-item label="船吊位置在最边上的位置需要">
							<uni-easyinput v-model="ArchiveVO.onboardCranePosition"></uni-easyinput>
						</uni-forms-item>
						<uni-forms-item label="船吊是否影响开板">
							<uni-data-select
								v-model="ArchiveVO.craneOpeningEffect"
								:localdata="getDictCacheByCode('is_ship_data_valid')"
							></uni-data-select>
						</uni-forms-item>
					</view>
				</uni-collapse-item>
				
				<uni-collapse-item title="加固要求" :open="false">
					<view class="collapse-item-content">
						<uni-forms-item label="加固要求">
							<uni-easyinput v-model="ArchiveVO.reinforcementRequirements"></uni-easyinput>
						</uni-forms-item>
					</view>
				</uni-collapse-item>
				
				<!-- is_ship_data_valid -->
			</uni-collapse>
		</uni-forms>
		<view class='submitBtnView'>
			<button type="primary" style="width: 80%;" @click="submit">提交</button>
		</view>
	</view>
</template>

<style>
/* #ifndef APP-NVUE */
  page {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    background-color: #fff;
    min-height: 100vh; /* 增加视口高度 */
    height: auto;
  }

  view {
    font-size: 14px;
    line-height: inherit;
  }

  /* #endif */
.collapse-item-content{
	width: 90%;
	margin-left: 5%;
	display: block;
	overflow: visible;

}
.submitBtnView{
	position: fixed; /* 固定在屏幕上 */
	bottom: 0; /* 距离底部为0像素 */
	left: 0; /* 左边界与视口左侧对齐 */
	width: 100%; /* 宽度等于视口宽度 */
	padding: 10px; /* 添加内边距(如果需要)*/
	background-color: #fff;
	z-index: 99999; /* 确保按钮在下层 */
}
</style>

3. 解决方法

3.1 下拉框被遮挡

在这里插入图片描述

可能涉及 uni-collapse-item 的内容布局方式和下拉框的定位冲突

由于 uni-collapse-item 内的内容可能受限于父级容器的 overflow 设置,下拉框无法超出父级容器的边界显示

这种情况只能增加底部空间

css中的last-child语法

:last-child {
  margin-bottom: 100px; /* 视情况增加足够的底部空间 */
}

或者直接在单个组件上:

<uni-forms-item label="风险等级">
	<uni-data-select
		v-model="ArchiveVO.riskLevel"
		:localdata="getDictCacheByCode('ship_risk_level')"
		style="margin-bottom: 100px"
	></uni-data-select>
</uni-forms-item>

在这里插入图片描述

后续我发现这种情况是不适用:(以下方式对我都不适用,诸位可尝试下)

  • 确保z-index值适当:可以通过CSS设置下拉框的z-index值,确保它高于页面上其他元素的层级,从而避免被遮挡。例如,可以给下拉框设置一个较高的z-index值

  • 使用overflow属性:在父容器上设置overflow: visible;,以确保子元素的下拉部分可以显示在父容器之外

.collapse-item-content {
  position: relative; /* Ensure positioning context */
}

.dropdown {
  position: relative; /* Or absolute */
  z-index: 1000; /* Adjust as needed */
}

3.2 uni-collapse-item 无法下拉的问题

由于页面布局高度未能自适应,或者是由固定在底部的按钮遮挡了内容
可以尝试以下方式进行优化:

方案一:为最外层的 uni-collapse 或页面增加内边距,避免内容被底部按钮遮挡

.uni-collapse {
  padding-bottom: 100px; /* 确保最下面的collapse item有足够空间展开 */
}

方案二:取消按钮的固定位置

如果底部按钮的固定位置导致了内容的遮挡,可以考虑将按钮的定位方式改为非固定,并确保页面高度能够包含所有内容:

.submitBtnView {
  position: relative; /* 改为相对定位,避免遮挡内容 */
  bottom: 0;
}

截图如下:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2167512.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Springboot+微信小程序 的高校社团管理小程序(含源码+数据库+lw)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 系统定…

Transcipher:从对称加密到同态加密

摘要 本文介绍了Transcipher的概念。在Transcipher的框架下&#xff0c;用户使用高效的对称加密&#xff0c;对自己的数据进行加密&#xff0c;然后将密文和私钥的同态加密密文传输给服务器。服务器进行同态解密&#xff0c;得到用户数据同态加密的密文。Transcipher通过将计算…

研控伺服驱动器通过EtherCAT转profinet网关与西门子PLC1200连接

本案例涉及西门子1200PLC与研控总线型混合伺服驱动器的连接&#xff0c;其在正常工作时需支持EtherCAT协议并作为EtherCAT从站&#xff0c;而监控系统中的PLC支持PROFINET协议。在本案例中采用EtherCat转ProfiNet网关&#xff0c;以实现PLC和伺服驱动器的整体交互。下图呈现了自…

andon安灯系统让生产异常快速高效解决

在现代化工厂的生产过程中&#xff0c;设备故障、物料短缺、工艺异常等突发事件屡见不鲜。这些异常情况不仅会直接影响生产效率&#xff0c;还会造成生产线停滞、产品质量下降&#xff0c;甚至引发安全事故。如何快速有效地解决这些异常&#xff0c;是提升生产效率和产品质量的…

java 解析excel

在Java中解析Excel文件&#xff0c;可以使用Apache POI库。以下是一个简单的例子&#xff0c;展示如何使用Apache POI读取一个Excel文件&#xff08;假设为.xlsx格式&#xff09;的内容。 首先&#xff0c;确保你的项目中包含了Apache POI的依赖。如果你使用Maven&#xff0c;…

CSRF高级防御绕过

1&#xff09;回顾low级别做过csrf页面的密码重置&#xff0c;重复之前的操作&#xff0c;我们发现级别调整中级之后&#xff0c;报错如下 2&#xff09;检查源码 进入dvwa源码&#xff0c;查找到checktoken&#xff1a; 3&#xff09;在dvwa-csrf页面上&#xff0c;抓包 http…

无人机之虚拟云台技术篇

一、概念解释 虚拟云台技术&#xff0c;并非直接安装在无人机上的机械装置&#xff0c;而是通过软件算法和传感器技术&#xff0c;模拟出物理云台的功能&#xff0c;实现对相机或传感器的稳定控制。这种技术通过高精度的算法和实时数据处理&#xff0c;能够在无人机飞行过程中&…

73 矩阵置零

解题思路&#xff1a; \qquad 原地算法&#xff0c;指除原有输入资料所占空间外&#xff0c;使用额外空间尽可能少(常数空间)的算法。本题容易想到的一种解法是&#xff0c;对于m x n的矩阵&#xff0c;一次遍历把含有0元素的行号、列号记录下来&#xff0c;然后再一次遍历把对…

uniapp 使用Vue3 setup引入 uniapp 的onReachBottom

在page.json中加入**“onReachBottonDistance”: 50**&#xff0c;这是距离底部多少开始触发 然后再对应的页面通过import将uniapp的api引入进去 dcloudio/uni-app是不用单独下载的&#xff0c;直接用就行 import {onReachBottom,} from dcloudio/uni-app;然后直接使用就好

centos7 更新 yum源 为 阿里云 LTS

centos7 更新 yum源 为 阿里云 按照下面的 步骤 1,2&#xff0c;3,4 来一遍 参考文档 CentOS yum源设置为国内aliyun yum源 https://developer.aliyun.com/article/1523301?spm5176.26934562.main.2.16c938e4ys9prQ CentOS 镜像 https://developer.aliyun.com/mirror/cent…

【【通信协议之ICMP协议的FPGA实现】】

通信协议之ICMP协议的FPGA实现 整体的实现框图如下所示 arp_rx.v module arp_rx#(//开发板MAC地址 00-11-22-33-44-55parameter BOARD_MAC 48h00_11_22_33_44_55, //开发板IP地址 192.168.1.10 parameter BOARD_IP {8d192,8d168,8d1,8d10} )(input …

【Linux:进程信号】

五个概念&#xff1a; 多个执行流能看到的一份资源叫做共享资源同步和互斥两种方式保护的公共资源叫做临界资源互斥&#xff1a;任何时候只能有一个进程访问该资源如何访问资源&#xff1f;&#xff1a;本质资源访问就是代码访问&#xff0c;代码访问共享资源不访问的共享资源对…

云原生|浅谈云原生中的对象存储之MinIO 的使用

一、什么是对象储存 对象存储&#xff08;Object Storage&#xff09;以对象的形式存储和管理数据&#xff0c;这些对象可以是任何类型的数据&#xff0c;例如 PDF&#xff0c;视频&#xff0c;音频&#xff0c;文本或其他文件类型。对象存储使用分布式存储架构&#xff0c;数据…

基于springboot+vue医院挂号就诊系统设计与实现

基于springbootvue医院挂号就诊系统设计与实现 springboot180基于spring boot的医院挂号就诊系统 摘 要 传统办法管理信息首先需要花费的时间比较多&#xff0c;其次数据出错率比较高&#xff0c;而且对错误的数据进行更改也比较困难&#xff0c;最后&#xff0c;检索数据费…

解决macOS MySQL安装后不能远程访问的问题

主要是因为我的后端服务是通过docker部署的, 无法和宿主机的MySQL进行通信. 首先输入 use mysql; 之后输入 update user set host “%” where user “root”; 最后输入 flush privileges; 合起来就是: use mysql;update user set host "%" where user &qu…

视频集成与融合项目中需要视频编码,但是分辨率不兼容怎么办?

在众多视频整合项目中&#xff0c;一个显著的趋势是融合多元化的视频资源&#xff0c;以实现统一监管与灵活调度。这一需求促使项目团队不断探索新的集成方案&#xff0c;确保不同来源的视频流能够无缝对接&#xff0c;共同服务于统一的调看与管理平台&#xff0c;进而提升整体…

工具介绍---效率高+实用

Visual Studio Code (VS Code) 功能特点&#xff1a; 智能代码提示&#xff1a;内置的智能代码提示功能可以自动完成函数、变量等的输入&#xff0c;提高代码编写速度。插件丰富&#xff1a;支持成千上万的扩展插件&#xff0c;例如代码片段、主题、Linting等&#xff0c;能够…

Skip、Compose、Flutter和RN

哈喽&#xff0c;我是老刘 前几天看到一个新的跨平台框架Skip&#xff0c;它的底层技术方案是转译。 感觉还挺巧的&#xff0c;因为不久前刚刚做了一个内部分享&#xff0c;就讲到了虚拟化的转译方案。 其实跨平台开发的技术和虚拟化的技术有很多相通的地方。 正好本文就把跨平…

轻量级日志管理系统SpringBoot3+Loki+grafana的使用实例

目录 文章目录 目录1、简介2、SpringBoot3应用发送日志到Loki2.1、基本介绍2.2、添加依赖2.3、配置文件application.yml2.4、创建logback配置2.5、添加日志示例2.6、运行SpringBoot3 3、在grafana中查看日志3.1、登录grafana3.2、查询日志3.3、查询我们的SpringBoot发送过来的日…

Linux部署python web项目Flask + gunicorn + nginx

文章目录 一、安装python&使用虚拟环境二、python程序重要参数加密2.1 非对称加密&#xff08;RSA&#xff09;2.2 生成密钥对2.4 以连接数据库参数加密为例2.4.1 工具类RSA.py 三、一个简单的Flask项目四、安装配置gunicorn4.1 安装4.2 启动/配置(选择eventlet)4.2.1 命令…