CSS实现选中卡片样式操作

 

 图一默认自动选中,并且不可取消选中,当选择其他卡片才可点击下一步


在  “ src/assets ” 路径下存放  save.png,代表选中的状态

<div class="cards"><ul class="container"><li v-for="image in images" :key="image.id"><div class="card" @click="toggleSelection(image)"><img :src="require('@/assets/' + image.src)" class="img w-full h-full"><img :src="image.selected ? require('@/assets/save.png') : ''" :class="image.selected ? 'checked' : 'noChecked'" /></div></li></ul>
</div>
/* 这里用到了tailwindcss ,可自行修改css样式 */
<div class="flex justify-center mt-10"><el-button @click="nextStep" :disabled="!hasSelectedImages">下一步</el-button>
</div>
data() {return {images: [{ id: 1, src: "background.png", name: 'name1', selected: true },{ id: 2, src: 'background.png', name: 'name2', selected: false },{ id: 3, src: 'background.png', name: 'name3', selected: false },]};},computed: {// 只有点击除图片1外的卡片才能点击下一步hasSelectedImages() {return this.images.some(image => image.selected && image.id !== 1);}},methods: {// 选择图片1直接返回toggleSelection(image) {if (image.id === 1) {return;}image.selected = !image.selected;},// 点击下一步,将选中的图片的信息传递到下一个页面nextStep() {const selectedImages = this.images.filter(image => image.selected);const selectedImageInfo = selectedImages.map(image => ({id: image.id,src: image.src,selected: image.selected,name: image.name}));// 执行下一步操作,比如跳转到下一个页面// 使用Vue Router进行页面跳转,或执行其他逻辑操作this.$router.push({ path: '/compare', query: { imageInfo: JSON.stringify(selectedImageInfo) } });}}
.cards {display: flex;justify-content: center;width: 100%;height: 100%;
}
.cards .container {padding: 0;margin: 0 -11px;width: auto;
}
.cards li {width: 300px;padding: 0 19px;box-sizing: border-box;float: left;list-style: none;
}
.card {height: 430px;width: 100%;background: #fff;border: 1px solid #eaeefb;border-radius: 5px;box-sizing: border-box;text-align: center;position: relative;transition: all .3s ease-in-out;bottom: 0;cursor: pointer;transition: translate 0.5s;
}
.card:hover {translate: 5px 5px;
}
.card .img {margin: 130px auto 60px;width: 160px;height: 120px;
}
.checked {height: 20px;width: 20px;position: absolute;top: 2%;right: 6%;
}
.noChecked{display: none;
}

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

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

相关文章

金融科技创新丨MogDB 数据库助四川天府银行信息化改造迈上新台阶

作为四川省重要的城市商业银行之一&#xff0c;四川天府银行自2001年12月成立以来&#xff0c;在中国银行业树立了多项标杆&#xff0c;逐步发展成为具有国际金融背景、跨区域、独具特色的现代精品银行。在信息系统升级改造的道路上&#xff0c;四川天府银行一直秉承着稳中求进…

sentinel docker 基础配置学习

1&#xff1a;去官网下载 Releases alibaba/Sentinel GitHub 2&#xff1a;保存到linux 3&#xff1a;编写dockerfile FROM openjdk:8-jreLABEL authors"xxx" #第二步创建一个文件夹Z RUN mkdir /app #第三步复制jar 到app 下 COPY xxxxxx-1.8.7.jar /app/#第四…

【Web】浅浅地聊JDBC java.sql.Driver的SPI后门

目录 SPI定义 SPI核心方法和类 最简单的SPIdemo演示 回顾JCBC基本流程 为什么JDBC要有SPI JDBC java.sql.Driver后门利用与验证 SPI定义 SPI&#xff1a; Service Provider Interface 官方定义&#xff1a; 直译过来是服务提供者接口&#xff0c;学名为服务发现机制 它通…

机器学习流程—数据预处理下篇

机器学习流程—数据预处理下篇 我们在机器学习项目开发过程中遇到的大多数现实数据集都具有混合数据类型的列。这些数据集由分类列和数字列组成。然而&#xff0c;各种机器学习模型不适用于分类数据&#xff0c;为了使这些数据适合机器学习模型&#xff0c;需要将其转换为数值…

Python 多线程编程实战:threading 模块的最佳实践

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站AI学习网站。 目录 前言 线程的创建 1. 继承 threading.Thread 类 2. 使用 threading.Thread 对象 线程的同步 使用锁 线程的通信…

最新趋势揭秘:即时通讯开发中的人工智能应用

随着人工智能技术的快速发展和广泛应用&#xff0c;即时通讯开发领域迎来了一场前所未有的变革和机遇。在当今数字化时代&#xff0c;人工智能已经成为各行各业发展的重要引擎之一&#xff0c;即时通讯应用也不例外。人工智能技术的应用不仅可以提升即时通讯的用户体验和功能&a…

大数据基础设施搭建 - Flink

文章目录 一、上传并解压压缩包二、修改集群配置2.1 修改flink-conf.yaml文件2.2 修改workers文件2.3 修改masters文件2.4 分发配置文件2.5 修改其他两台机器的配置文件flink-conf.yaml 三、启动关闭集群&#xff08;Standalone模式&#xff09;四、访问WEB-UI五、向集群提交作…

常用日期和时间标准对比:HTML, ISO 8601, RFC 3339, RFC 5322

1. HTML, ISO 8601, RFC 3339, RFC 5322 对比 日期和时间&#xff0c;对于不同系统和平台之间的数据交换和互操作至关重要。本文将对比 HTML 标准、ISO 8601、RFC 3339 和 RFC 5322&#xff0c;为读者提供参考。 表格文字版见文末-附 1.1. 标准链接 HTML 标准: https://html…

【机器学习300问】27、高偏差与高方差是什么?他们对评估机器学习模型起何作用?

〇、回归模型举例 &#xff08;1&#xff09;第一种情况 你选择了一个简单的模型&#xff0c;比如一个直线&#xff0c;却想拟合类似抛物线分布的数据。 图1 &#xff08;2&#xff09;第二种情况 你选择了一个复杂的模型&#xff0c;比如一个四次多项式&#xff0c;想拟合类…

android高级面试题及答案,已拿offer

一、java相关 java基础 1、java 中和 equals 和 hashCode 的区别 2、int、char、long 各占多少字节数 3、int 与 integer 的区别 4、谈谈对 java 多态的理解 5、String、StringBuffer、StringBuilder 区别 6、什么是内部类&#xff1f;内部类的作用 7、抽象类和接口区别 java高…

2.模拟问题——6.活着的树

输入 500 3 100 200 150 300 470 471 输出 298 【提交地址】 简单思路 初始化一个全false的bool数组&#xff0c;表示树未被移走&#xff0c;然后根据输入值将数组内的对应序号值设为true表示已经移走。 最后统计false的数目即为剩下的树数。 #include <cstdio> #incl…

步进电机驱动器接法

实物 参数 共阳极&#xff1a; 使能给高电平有效 共阴极&#xff1a; 使能给低电平有效 整体接线 参考内容 B站UP范辉