当前位置: 首页 > news >正文

element-ui制作多颜色选择器

在这里插入图片描述
将颜色存储到一个数组中去。

<template><div class="color-picker-container" style="margin-top: 10px;"><!-- 显示已选颜色 --><div class="color-selection"><divv-for="(color, index) in selectedColors":key="index"class="color-chip":style="{ backgroundColor: color }"><button @click="removeColor(index)" class="remove-btn">X</button></div><!-- 颜色选择器 --><el-color-pickerv-if="showColorPicker"v-model="currentColor"@change="addColor"show-alphasize="small"class="color-picker"/><div v-if="selectedColors.length < maxColors" class="add-color-btn" @click="showColorPicker = !showColorPicker">+</div></div></div>
</template><script>
export default {data() {return {selectedColors: ['#409EFF', '#67C23A', '#E6A23C', '#F56C6C', '#7265E6', '#EBEEF5'], // 默认6个颜色currentColor: null,showColorPicker: false,maxColors: 10 // 最大可选颜色数量};},methods: {addColor(color) {if (color && this.selectedColors.length < this.maxColors && !this.selectedColors.includes(color)) {this.selectedColors.push(color);}this.showColorPicker = false;},removeColor(index) {this.selectedColors.splice(index, 1);},},
};
</script>
<style scoped>
.color-picker-container {position: relative;
}.color-selection {display: flex;flex-wrap: wrap;gap: 8px;margin-bottom: 16px;
}.color-chip {width: 40px;height: 40px;border-radius: 8px; /* 圆角 */position: relative;cursor: pointer;transition: transform 0.1s ease-in-out;
}.color-chip:hover {transform: scale(1.1); /* 悬停时放大 */
}.remove-btn {position: absolute;top: -6px;right: -6px;background-color: white;border: 1px solid #ccc;border-radius: 50%;width: 16px;height: 16px;line-height: 14px;text-align: center;font-size: 10px;cursor: pointer;display: none;
}.color-chip:hover .remove-btn {display: block;
}.add-color-btn {width: 40px;height: 40px;border-radius: 8px; /* 圆角 */background-color: #f0f0f0;border: 1px dashed #dcdcdc;display: flex;align-items: center;justify-content: center;font-size: 20px;color: #8c8c8c;cursor: pointer;transition: background-color 0.3s ease;
}.add-color-btn:hover {background-color: #e0e0e0;
}.color-picker {/*position: absolute;*/bottom: -5px;left: 0;
}
</style>
http://www.lryc.cn/news/522643.html

相关文章:

  • JVM体系结构
  • wandb使用遇到的一些问题
  • Java中的继承
  • Cadence笔记--原理图导入PCB
  • 从AI生成内容到虚拟现实:娱乐体验的新边界
  • 【Linux】gdb_进程概念
  • 安全类脚本:拒绝ssh暴力破解
  • Android15源码编译问题处理
  • 图解Git——分布式Git《Pro Git》
  • Linux内核编程(二十一)USB应用及驱动开发
  • 什么是数据仓库?
  • 计算机网络 (48)P2P应用
  • SK海力士(SK Hynix)是全球领先的半导体制造商之一,其在无锡的工厂主要生产DRAM和NAND闪存等存储器产品。
  • FunASR 在Linux/Unix 平台编译
  • git操作(Windows中GitHub)
  • 物联网网关Web服务器--Boa服务器移植与测试
  • vue3学习日记8 - 一级分类
  • 前端实习第二个月小结
  • 深入了解卷积神经网络(CNN):图像处理与深度学习的革命性技术
  • b站视频(网页加客户端)+本地视频 生成回链
  • 3.数据库系统
  • 红米k40s设备驱动设备驱动树
  • Linux-C/C++--文件 I/O 基础
  • HarmonyOS NEXT开发进阶(六):HarmonyOS NEXT实现嵌套 H5 及双向通信
  • 【Flink系列】4. Flink运行时架构
  • 动态主机配置协议 (DHCPv4)介绍,详细DHCP协议学习笔记
  • Vue.js组件开发-如何处理跨域请求
  • 【C++】构造函数与析构函数
  • Agent区别于MOE和RAG的核心; Agent(智能体)、RAG和MOE区别
  • 【PCL】Segmentation 模块—— 欧几里得聚类提取(Euclidean Cluster Extraction)