vue3 antd项目实战——修改table表格的默认样式(一)调整table表格每行(row)行高过高问题

news2024/12/23 19:33:45

vue3 antd项目实战——修改ant design vue table组件的默认样式(调整每行行高)

  • 知识调用
  • 场景复现
  • 实际操作
    • 解决a-table表格padding过宽

知识调用

文章中可能会用到的知识链接
vue3+ant design vue+ts实战【ant-design-vue组件库引入】
css样式穿透(/deep/ ::v-deep深度选择器)🔥🔥
vue3 antd项目实战——table表格(一文带你快速实现后台管理系统最常用的table表格)🔥🔥

场景复现

修改antd table的默认样式
ant design vue组件库固然简单好用,但是它的默认样式有时候非常鸡肋,有些是不太符合我们的需求的。比如,表格的padding过宽,又比如,更改行颜色。 这时我们需要用到 vue组件的样式穿透 来更改table表格的默认样式。

实际操作

解决a-table表格padding过宽

改变默认样式之前: 👇👇👇
在这里插入图片描述

  • 假如我们需要打印这个表格,在纸张有限的情况下,我们肯定是既希望保证美观,又希望在美观的同时最大限度的利用纸张。
  • 类比页面亦是如此,我们可以将table样式中的padding调小一点,于是这里就用到了上期文章所介绍的 css样式穿透。这里我们称为 vue的样式穿透

表格源码:(包含表格数据data、表格纵列目录columns)

<template>
    <a-table 
        :columns="columns" 
        :data-source="data"
        class="AStockOutDetailTable"
        >
        <template #bodyCell="{ column, text }">
            <template v-if="column.dataIndex === 'name'">
                <a>{{ text }}</a>
            </template>
        </template>
    </a-table>
</template>
<script lang="ts" setup>
import { defineComponent } from 'vue';
const columns = [
    {
        title: 'Name',
        dataIndex: 'name',
        key: 'name',
    },
    {
        title: 'Age',
        dataIndex: 'age',
        key: 'age',
        width: 80,
    },
    {
        title: 'Address',
        dataIndex: 'address',
        key: 'address 1',
        ellipsis: true,
    },
    {
        title: 'Long Column Long Column Long Column',
        dataIndex: 'address',
        key: 'address 2',
        ellipsis: true,
    },
    {
        title: 'Long Column Long Column',
        dataIndex: 'address',
        key: 'address 3',
        ellipsis: true,
    },
    {
        title: 'Long Column',
        dataIndex: 'address',
        key: 'address 4',
        ellipsis: true,
    },
];

const data = [
    {
        key: '1',
        name: 'John Brown',
        age: 32,
        address: 'New York No. 1 Lake Park, New York No. 1 Lake Park',
        tags: ['nice', 'developer'],
    },
    {
        key: '2',
        name: 'Jim Green',
        age: 42,
        address: 'London No. 2 Lake Park, London No. 2 Lake Park',
        tags: ['loser'],
    },
    {
        key: '3',
        name: 'Joe Black',
        age: 32,
        address: 'Sidney No. 1 Lake Park, Sidney No. 1 Lake Park',
        tags: ['cool', 'teacher'],
    },
];
</script>

这里我采用的是最通用的解决方式3。 👇👇👇

解决方式3——通用的样式穿透(使用::v-deep)

<style scoped>
  ::v-deep .ant-table-thead > tr > th, .ant-table-tbody > tr > td {
      padding: 8px 8px;
      overflow-wrap: break-word;
  }
  ::v-deep .ant-table-tbody .ant-table-row td {
      padding-top: 8px;
      padding-bottom: 8px;
    }
</style>

解决方式1——sass和less的样式穿透(使用/deep/)

<style lang="scss" scoped>
  .AStockOutDetailTable{
    & /deep/ .ant-table-thead > tr > th, .ant-table-tbody > tr > td {
      padding: 8px 8px;
      overflow-wrap: break-word;
    }
    & /deep/ .ant-table-tbody .ant-table-row td {
      padding-top: 8px;
      padding-bottom: 8px;
    }
  }
</style>

解决方式2——stylus的样式穿透(使用>>>)

<style lang="stylus" scoped>
  .AStockOutDetailTable >>> .ant-table-thead > tr > th, .ant-table-tbody > tr > td {
      padding: 8px 8px;
      overflow-wrap: break-word;
  }
  .AStockOutDetailTable >>> .ant-table-tbody .ant-table-row td {
      padding-top: 8px;
      padding-bottom: 8px;
    }
</style>
  • 用另外两种方式都可以解决表格默认样式的问题。

用上述方法更改默认样式之后的样式: 👇👇👇
在这里插入图片描述


下期文章将介绍如何修改antd table表格的行样式

觉得这篇文章有用的小伙伴们🔥
可以点赞➕收藏➕关注哦~🔥

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

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

相关文章

node.js+uni计算机毕设项目基于微信小程序的房屋交易平台(程序+小程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置&#xff1a; Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分离等…

智能超表面(RIS)辅助双功能雷达和通信波束形成设计(Matlab代码实现)

目录 &#x1f4a5;1 概述 &#x1f4da;2 运行结果 &#x1f389;3 参考文献 &#x1f468;‍&#x1f4bb;4 Matlab代码 &#x1f4a5;1 概述 智能超表面&#xff0c;也叫做“可重配智能表面”&#xff0c;或者“智能反射表面”&#xff0c;英文为RIS&#xff08;Reconf…

springboot消息

发送短信的简单原理 activemq 5.17 版本的 需要java11 环境 mq 网页版本控制台 账号密码为admin 指定发送的名 即上图的默认名为itheima 监听器 自动监听消息 接受 如果接受到消息 还想再其他地方使用 可以使用sendto 使用管理员权限 登录 然后列出插件 安装插件 r…

Java 注解 自定义注解 注解的解析

目录 一、认识Java自带注解 二、自定义注解 1、认识元注解 2、自定义注解 3、注解的使用 4、反射解析注解 一、认识Java自带注解 jdk中自带了一些注解&#xff0c;如下四个&#xff1a; Override类方法的的重写注解Deprecated类或方法被废除的注解FunctionalInterface函…

数据结构---串

&#xff08;一&#xff09;串的基本概念 串&#xff08;string或字符串&#xff09;是由零个或多个字符组成的有限序列&#xff0c;一般记为&#xff1a;s′a1a2…a′n(n≥0) 其中&#xff0c;s是串的名称&#xff0c;用单括号括起来的字符序列是串的值; ai(1≤i≤n)ai(1≤i…

CSS优先级CSS盒子模型

1、CSS继承 文字相关的样式可以被继承【作用在父元素上面&#xff0c;子元素可以继承】布局相关的样式不可以被继承【可以通过inherit值进行继承】 2、CSS优先级 书写了相同样式时&#xff0c;后写的样式优先级较高当内部样式和外部样式有相同的样式时&#xff0c;后写的样式…

操作符(8)

目录 1、算术操作符 2、移位操作符 3、位操作符 1、不能创建临时变量&#xff08;第三个变量&#xff09;&#xff0c;实现两个数的交换 4、赋值操作符 5、单目操作符 6、关系操作符 7、逻辑操作符 8、条件操作符 9、逗号表达式 10、下标引用、函数调用和结构成员 …

WPF开发之Prism详解【内附源码】

在实际应用开发中&#xff0c;随着项目业务逐渐复杂&#xff0c;耦合度会越来越高&#xff0c;维护成本也会直线上升&#xff0c;所以解耦也变得越来越重要。Prism框架为WPF开发中解耦提供了非常便捷的应用。今天主要以一个简单的小例子&#xff0c;简述WPF开发中Prism框架的简…

基于Arch Linux的SystemRescue 9.06工具包新特性

导读在上次发布两个月后&#xff0c;SystemRescue&#xff08;原名SystemRescueCd&#xff09;Linux系统救援工具包今天更新到了9.06版本&#xff0c;这个版本在启动菜单中增加了新的选项&#xff0c;更新了组件和新工具。 SystemRescue 9.06在这里采用了最新、最棒的Xfce 4.18…

【三年面试五年模拟】算法工程师的独孤九剑秘籍(第十一式)

Rocky Ding公众号&#xff1a;WeThinkIn写在前面 【三年面试五年模拟】栏目专注于分享CV算法与机器学习相关的经典&&必备&&高价值的面试知识点&#xff0c;并向着更实战&#xff0c;更真实&#xff0c;更从容的方向不断优化迭代。也欢迎大家提出宝贵的意见或优…

我是真没想道,这个面试题居然从11年前就开始讨论了,而官方今年才表态。

大家好 这期给大家盘一个面试题啊&#xff0c;就是下面的第二题。 这个面试题的图片都被弄的有一点“包浆”了。 所以为了你的观感&#xff0c;我还是把第二道题目手打一遍。 啧啧啧&#xff0c;这行为&#xff0c;暖男作者实锤了&#xff1a; spring 在启动期间会做类扫描&…

前端css样式小知识点(2)

文章目录前言图文实操讲解1、微信小程序之页面跳转方法页面跳转有很多种方式&#xff0c;先简单说一下它们的区别吧简单实现2、微信小程序this.setData修改对象、数组中的值3、微信小程序-获取input值的方法4、微信小程序-常用的三种弹窗5、dataset 简单小知识 误区6、that.set…

git status查看本地库状态、git add添加暂存区

假设目前我处于我的项目之下。 查看状态命令 git status 可以看到如下的状态 现在我新建一个文件hello.txt 在里面写了16行的内容。&#xff08;这个vim之前也没有使用过&#xff0c;在最后记录一下。&#xff09; 再看一下状态 那我们现在就add一下&#xff0c;使用命令&…

新冠确诊阳性的第六篇博客,Linux防火墙管理

Linux防火墙管理1.防火墙的下载2.演示&#xff1a;关闭防火墙3.防火墙端口管理4.防火墙的其他命令1.防火墙的下载 Centos7下默认的防火墙是 Firewall 如果提示&#xff1a;Unit firewalld.service could not be found. 说明防火墙没有安装&#xff0c;需要安装 sudo yum ins…

redux及react-redux

redux 这篇文章谈一谈仓库redux。 首先&#xff0c;学习任何东西都离不开官网。在此附上官网网址 Redux - A predictable state container for JavaScript apps. | Redux 1.什么是redux&#xff1f; 从如下几个方面&#xff1a; redux在一个项目中可集中管理状态(数据)和逻…

【Pandas入门教程】如何操作文本数据

如何操作文本数据 来源&#xff1a;Pandas官网&#xff1a;https://pandas.pydata.org/docs/getting_started/intro_tutorials/index.html 笔记托管&#xff1a;https://gitee.com/DingJiaxiong/machine-learning-study 文章目录如何操作文本数据导包数据准备【小结】导包 imp…

怎么录屏?5 款免费无水印的录屏神器

无论您是想记录游戏中令人难忘的时刻、与他人分享视频教程&#xff0c;还是做更多类似的事情&#xff0c;都必须使用屏幕录像机。从 Internet 上很容易获得屏幕录像机&#xff1b;然而&#xff0c;找到一个“好”的并不是那么简单。当我们试用一些免费的屏幕录像机来捕捉电脑屏…

springboot整合之版本号统一管理

特别说明&#xff1a;本次项目整合基于idea进行的&#xff0c;如果使用Eclipse可能操作会略有不同&#xff0c;不过总的来说不影响。 springboot整合之如何选择版本及项目搭建 springboot整合之版本号统一管理 springboot整合mybatis-plusdurid数据库连接池 springboot整合…

华舞依旧,未来不远:智能光伏十大趋势告诉我们什么?

在“碳中和”时代&#xff0c;光伏正在日渐成为能源舞台的主角。我们知道&#xff0c;想要实现“碳中和”目标就需要降低能源带来的碳排放。而在能够实现这个目标的能源体系中&#xff0c;水电、风电受到环境限制较强&#xff0c;而氢能、核聚变为代表的下一代能源体系还不够成…

D59|单调栈进阶版

503.下一个更大元素II 1.题目 给定一个循环数组&#xff08;最后一个元素的下一个元素是数组的第一个元素&#xff09;&#xff0c;输出每个元素的下一个更大元素。数字 x 的下一个更大的元素是按数组遍历顺序&#xff0c;这个数字之后的第一个比它更大的数&#xff0c;这意味…