记录一个移动端表格布局,就是一行标题,下面一列是对应的数据,一条一条的数据,还有点击数据进入详情的图标,还可以给一列加input输入框,还可以一对多

注:以下字段名都是随手写,并不规范,自己替换自己的,,只参考样式

注:以下重要的是布局,样式,宽高什么的再自己去搞吧

    <view class="search">
                <u-search @change="searchfun" v-model='keyword' bgColor='#FFFFFF' :showAction="false"
                    height="35"></u-search>
            </view>


            <!--  -->

            <view class="choicetwo22">

                <view class="table-container">
                    <view class="table-header">
                        <view class="header-cell header-cell-narrow">测点</view>
                        <view class="header-cell header-cell-narrow">本次变化量(mm)</view>
                        <view class="header-cell header-cell-narrow">累计变化量(mm)</view>
                        <view class="header-cell header-cell-narrow">速率(mm/天)</view>
                        <view class="header-cell cell-spi"></view>
                        <!-- <view class="header-cell header-cell-wide">观测值</view> -->
                    </view>
                    <view v-for="(item, index) in points" :key="index" class="table-row"
                        :class="{ 'last-item': index != points.length - 1 }">
                        <view class="cell cell-narrow">{{ item.name }}</view>
                        <view class="cell cell-narrow">{{ item.nowvalue }}</view>
                        <view class="cell cell-narrow">{{ item.sumvalue }}</view>
                        <view class="cell cell-narrow">{{ item.speed }}</view>
                        <view class="cell cell-spi">

                            <image @click="tothingsdetail(item)" class='listicon'
                                src="../../static/mainnow/xingzhuang815_1.png" mode=""></image>


                        </view>
                        <!--     <view class="cell cell-wide">
                                <input :value="item[bindProperty]" type="number" placeholder="请输入观测值"
                                @input="handleInput($event, index)" @blur="updateValue(index)" />
                        </view> -->
                    </view>

                </view>

            </view>

++++++++++++++++++++++++++++++++++++++++++

.header-cell {
        font-weight: 600;
        // padding-bottom: 10px;
        // border-bottom: 1px solid #D7DBEA;
    }

    .header-cell-narrow,
    .cell-narrow {
        width: 30%;
        /* 测点编号列占30% */
        box-sizing: border-box;

        /* 确保padding和border包含在width内 */
    }

    .header-cell-wide,
    .cell-wide {
        width: 70%;
        /* 观测值列占70% */
        box-sizing: border-box;
        /* 确保padding和border包含在width内 */
    }

    .cell-spi {
        width: 5%;
        box-sizing: border-box;
        /* 确保padding和border包含在width内 */
    }

table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
        /* 固定表格布局 */
    }

    th,
    td {
        padding: 8px;
        text-align: center;
        height: 60px;

    }

    th {

        font-weight: bold;
    }

    .center-cell {
        vertical-align: middle;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        /* 确保高度适应内容 */
    }

.table-row {
        display: flex;
        padding: 10px;
        height: 60px;
        color: #757b9b;
    }

    .cell {
        // flex: 1;
        text-align: center;
        line-height: 40px;

    }

第二种

            <view class="table-container">
                    <table width="100%">
                        <thead>
                            <tr>
                                <th class="col-25">测点编号</th>
                                <th class="col-25">传感器编号</th>
                                <th class="col-50">传感器值</th>
                            </tr>
                        </thead>
                        <tbody>
                            <!-- 使用双重循环遍历 pointspower 和其内部的 cgq 数组 -->
                            <template v-for="(item, index) in pointspower">
                                <!-- 显示每个 cgq 对象的行 -->
                                <tr v-for="(sensor, sensorIndex) in item.cgqbhs"
                                    :class="{ 'last-item': isLastItem(index, sensorIndex) }">
                                    <!-- 测点编号只在第一行显示,并使用 rowspan 合并单元格 -->
                                    <td v-if='sensorIndex === 0' :colspan="item.cgqbhs.length"
                                        class="center-cell cell ">
                                        {{ item.jcdbh }}
                                    </td>
                                    <td v-else :colspan="item.cgqbhs.length" class="center-cell ">

                                    </td>
                                    <td class=" col-25">{{ sensor.cgqbh }}</td>
                                    <td class="cell  col-50">
                                        <input :value="sensor.pl" type="number" placeholder="输入观测值"
                                            @input="handleInputs($event, index, sensorIndex)"
                                            @blur="updateValues(index, sensorIndex)" />
                                    </td>
                                </tr>
                            </template>
                        </tbody>
                    </table>

                </view>

++++++++++++++++++++++

.col-25 {
        width: 25%;
        box-sizing: border-box;

    }

    .col-50 {
        width: 50%;
        box-sizing: border-box;

    }

    .header-cell-narrow,
    .cell-narrow {
        width: 30%;
        /* 测点编号列占30% */
        box-sizing: border-box;
        /* 确保padding和border包含在width内 */
    }

    .header-cell-wide,
    .cell-wide {
        width: 70%;
        /* 观测值列占70% */
        box-sizing: border-box;
        /* 确保padding和border包含在width内 */
    }

    table {
        width: 100%;
        border-collapse: collapse;
        table-layout: fixed;
        /* 固定表格布局 */
    }

    th,
    td {
        padding: 8px;
        text-align: center;
        height: 60px;

    }

    th {

        font-weight: bold;
    }

    .center-cell {
        vertical-align: middle;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        height: 100%;
        /* 确保高度适应内容 */
    }

    .last-item {
        border-bottom: none;
    }

    .header-cell {
        // flex: 1;
        text-align: center;
    }

    .table-row {
        display: flex;
        padding: 10px;
        height: 60px;

    }

    .cell {
        // flex: 1;
        text-align: center;
        line-height: 40px;

    }

    .cell input {
        width: 100%;
        height: 120%;
        box-sizing: border-box;
        padding: 5px;
        border: 1px solid #ddd;
        border-radius: 4px;
    }

    .cell uni-input {
        width: 100%;
        height: 120%;
        box-sizing: border-box;
        padding: 5px;
        border: 1px solid #ddd;
        border-radius: 4px;
    }

    /deep/ .uni-select__selector-item {
        display: flex;
        cursor: pointer;
        line-height: 35px;
        font-size: 14px;
        text-align: left;
        padding: 0px 10px;
    }

    .last-item {
        border-bottom: 1px solid #D7DBEA;
        /* 移除最后一条项的下边框 */
    }

    /deep/ .uni-stat__select {
        display: flex;
        align-items: center;
        cursor: pointer;
        width: 70vw;
        flex: 0;
        box-sizing: border-box;
    }

    .lablename {
        width: 80px;
        min-width: 80px;

    }

    /deep/ .uni-select__input-text {
        // width: 100%;
        width: 50vw;
        color: #333;
        white-space: wrap;
        text-overflow: ellipsis;
        -o-text-overflow: ellipsis;
        overflow: hidden;
        text-align: right;
        color: #85898C;

        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        /* 设置最大行数 */
        overflow: hidden;
        text-overflow: ellipsis;

    }

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

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

相关文章

浅析大语言模型安全和隐私保护国内外标准和政策

过去两年&#xff0c;大模型技术已经普及并逐步渗透到各行各业&#xff0c;2025年注定是大模型应用井喷式发展的一年&#xff0c;AI在快速发展的同时&#xff0c;其带来的安全风险也逐渐凸显。人工智能系统的安全性和隐私保护已经成为社会关注的重点。 附下载&#xff1a;600多…

ELK日志分析实战宝典之ElasticSearch从入门到服务器部署与应用

目录 ELK工作原理展示图 一、ElasticSearch介绍&#xff08;数据搜索和分析&#xff09; 1.1、特点 1.2、数据组织方式 1.3、特点和优势 1.3.1、分布式架构 1.3.2、强大的搜索功能 1.3.3、数据处理与分析 1.3.4、多数据类型支持 1.3.5、易用性与生态系统 1.3.6、高性…

【老白学 Java】项目演练 - Quizzes #2

项目演练 - Quizzes #2 文章来源&#xff1a;《Head First Java》修炼感悟。 上一篇文章老白仔细分析了 Quizzes 的类结构&#xff0c;本文接上一章继续对功能模块逐步完善。 整个程序没有复杂的算法&#xff0c;仅仅用到了一些基础知识&#xff0c;如果大家已经了解了这部分内…

计算机网络 (33)传输控制协议TCP概述

一、定义与基本概念 TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议。它工作在OSI模型的第四层&#xff0c;即传输层&#xff0c;为用户提供可靠的、有序的和无差错的数据传输服务。TCP协议与UDP协议是传输层的两大主要协议&#xff0c;但两者在设计上有明显的不同&…

JuiceFS 2024:开源与商业并进,迈向 AI 原生时代

即将过去的 2024 年&#xff0c;是 JuiceFS 开源版本推出的第 4 年&#xff0c;企业版的第 8 个年头。回顾过去这一年&#xff0c;JuiceFS 社区版依旧保持着快速成长的势头&#xff0c;GitHub 星标突破 11.1K&#xff0c;各项使用指标增长均超过 100%&#xff0c;其中文件系统总…

4、SDH为基础的多业务传送-MSTP

1、SDH&#xff08;Synchronous Digital Hierarchy&#xff0c;同步数字体系&#xff09; SDH 就像是一条超级高速公路&#xff0c;它的规则很严格&#xff0c;所有的车辆&#xff08;数据信号&#xff09;都要按照它规定的速度和车道&#xff08;标准的传输体制&#xff09;行…

初级前端面试题 - js

前言&#xff1a;众所周知&#xff0c;HTML,CSS,JS是学习前端所必备的。js的基础学好了&#xff0c;框架类的vue,react等都会接受的很快&#xff0c;因此js是前端很总要的一个部分&#xff0c;这篇文章将会结合面试题&#xff0c;对js的知识点进行总结 号外号外&#xff0c;这是…

使用 Maxwell 计算母线的电动势

三相短路事件的动力学 三相短路事件在电气系统中至关重要&#xff0c;因为三相之间的意外连接会导致电流大幅激增。如果管理不当&#xff0c;这些事件可能会造成损坏&#xff0c;因为它们会对电气元件&#xff08;尤其是母线&#xff09;产生极大的力和热效应。 短路时&#x…

Unity自定义编辑器:基于枚举类型动态显示属性

1.参考链接 2.应用 target并设置多选编辑 添加[CanEditMultipleObjects] using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEditor;[CustomEditor(typeof(LightsState))] [CanEditMultipleObjects] public class TestInspector :…

利用 Python 脚本批量创建空白 Markdown 笔记

文章目录 利用 Python 脚本批量创建空白 Markdown 笔记1 背景介绍2 需求描述3 明确思路4 具体实现4.1. 遍历 toc.md 文件&#xff0c;收集文件名和对应的文件内容4.2. 实现文件批量生成逻辑4.3. 补全缺失的工具函数4.4. 进一步补全工具函数中的工具函数 5 脚本运行6 注意事项 利…

Apache XMLBeans 一个强大的 XML 数据处理框架

Apache XMLBeans 是一个用于处理 XML 数据的 Java 框架&#xff0c;它提供了一种方式将 XML Schema (XSD) 映射到 Java 类&#xff0c;从而使得开发者可以通过强类型化的 Java 对象来访问和操作 XML 文档。下面将以一个简单的案例说明如何使用 Apache XMLBeans 来解析、生成和验…

计算机毕业设计Python机器学习农作物健康识别系统 人工智能 图像识别 机器学习 大数据毕业设计 算法

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

2024-2029年中国毛绒玩具行业市场分析及发展前景预测报告

引言&#xff1a;重要性及市场增长趋势 在快节奏的现代生活中&#xff0c;毛绒玩具以其柔软触感和温馨陪伴&#xff0c;成为了许多人心灵的慰藉。它们不仅是儿童的忠实玩伴&#xff0c;更是成人世界里不可或缺的情感寄托。近年来&#xff0c;随着消费者情感需求的日益增长和个…

安装vue脚手架出现的一系列问题

安装vue脚手架出现的一系列问题 前言使用 npm 安装 vue/cli2.权限问题及解决方法一&#xff1a;可以使用管理员权限进行安装。方法二&#xff1a;更改npm全局安装路径 前言 由于已有较长时间未进行 vue 项目开发&#xff0c;今日着手准备开发一个新的 vue 项目时&#xff0c;在…

YARN WebUI 服务

一、WebUI 使用 与HDFS一样&#xff0c;YARN也提供了一个WebUI服务&#xff0c;可以使用YARN Web用户界面监视群集、队列、应用程序、服务、流活动和节点信息。还可以查看集群详细配置的信息&#xff0c;检查各种应用程序和服务的日志。 1.1 首页 浏览器输入http://node2.itc…

JavaSE——网络编程

一、InetAddress类 InetAddress是Java中用于封装IP地址的类。 获取本机的InetAddress对象&#xff1a; InetAddress localHost InetAddress.getLocalHost();根据指定的主机名获取InetAddress对象&#xff08;比如说域名&#xff09; InetAddress host InetAddress.getByNa…

互联网全景消息(10)之Kafka深度剖析(中)

一、深入应用 1.1 SpringBoot集成Kafka 引入对应的依赖。 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupI…

G1原理—3.G1是如何提升垃圾回收效率

大纲 1.G1为了提升GC的效率设计了哪些核心机制 2.G1中的记忆集是什么 3.G1中的位图和卡表 4.记忆集和卡表有什么关系 5.RSet记忆集是怎么更新的 6.DCQ机制的底层原理是怎样的 7.DCQS机制及GC线程对DCQ的处理 提升G1垃圾回收器GC效率的黑科技 G1设计了一套TLAB机制 快速…

Elastic-Job相关

文档参考视频&#xff1a;09_SpringBoot案例演示_哔哩哔哩_bilibili 一、Elastic-Job介绍 Elastic-Job 是一个轻量级、分布式的任务调度框架&#xff0c;旨在解决分布式环境下的定时任务调度问题。 1.1. Elastic-Job 的核心组件 Elastic-Job 是由多个核心组件构成的&#x…

【Linux】设备驱动中的ioctl详解

在Linux设备驱动开发中&#xff0c;ioctl&#xff08;输入输出控制&#xff09;是一个非常重要的接口&#xff0c;用于用户空间应用程序与内核空间设备驱动之间进行通信。通过ioctl&#xff0c;应用程序可以发送命令给设备驱动&#xff0c;控制设备的行为或获取设备的状态信息。…