css3的filter图片滤镜使用

业务介绍

默认:第一个图标为选中状态,其他三个图标事未选中状态

样式:选中状态是深蓝,未选中状体是浅蓝

交互:鼠标放上去选中,其他未选中,鼠标离开时候保持当前选中状态

实现:目前只有一下四个图标,需要用css3的滤镜实现

代码实现

复制代码
//变深的滤镜
.itemHover1 {
  filter: hue-rotate(385deg) saturate(20);
}

//变浅的滤镜
.itemHover2 {
  filter: hue-rotate(6deg) saturate(1.5) opacity: 0.5;
}

const tabMouseOver = (index: any) => {
  setactiveIndex(index);
};

{tabItems.map((item, index) => (
  <div
    key={index}
    onMouseOver={() => {      
      tabMouseOver(index);
    }}

    className={classnames(styles.tabItem)}
    >
    <div className={styles.iconBox}>
      <img
        className={classnames({
          [styles.itemHover2]: activeIndex !== index && index == 0,
          [styles.itemHover1]: activeIndex === index && index !== 0,
        })}
        src={item.iconUrl}
        />
    </div>
  </div>
))}

深度解读css中filter滤镜及在图片与边框改色方面的应用 - 技术日志 - 手册与笔记 - 易网

相关推荐
hh随便起个名41 分钟前
力扣二叉树的三种遍历
javascript·数据结构·算法·leetcode
小浣熊熊熊熊熊熊熊丶1 小时前
《Effective Java》第25条:限制源文件为单个顶级类
java·开发语言·effective java
啃火龙果的兔子1 小时前
JDK 安装配置
java·开发语言
星哥说事1 小时前
应用程序监控:Java 与 Web 应用的实践
java·开发语言
我是小路路呀1 小时前
element级联选择器:已选中一个二级节点,随后又点击了一个一级节点(仅浏览,未确认选择),此时下拉框失去焦点并关闭
javascript·vue.js·elementui
程序员爱钓鱼1 小时前
Node.js 编程实战:文件读写操作
前端·后端·node.js
PineappleCoder2 小时前
工程化必备!SVG 雪碧图的最佳实践:ID 引用 + 缓存友好,无需手动算坐标
前端·性能优化
等....2 小时前
Miniconda使用
开发语言·python
zfj3212 小时前
go为什么设计成源码依赖,而不是二进制依赖
开发语言·后端·golang
醇氧2 小时前
org.jetbrains.annotations的@Nullable 学习
java·开发语言·学习·intellij-idea