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滤镜及在图片与边框改色方面的应用 - 技术日志 - 手册与笔记 - 易网

相关推荐
wjs20247 小时前
SQLite Glob 子句详解
开发语言
youyicc7 小时前
Qt连接Pg数据库
开发语言·数据库·qt
量子炒饭大师7 小时前
【C++入门】Cyber底码作用域的隔离协议——【C++命名空间】(using namespace std的原理)
开发语言·c++·dubbo
froginwe117 小时前
PHP 魔术常量
开发语言
古城小栈7 小时前
Rust 的 validator 库
开发语言·后端·rust
froginwe117 小时前
《Foundation 选项卡:设计与实现的深入探讨》
开发语言
lsx2024067 小时前
XSLT `<sort>` 标签详解
开发语言
古城小栈7 小时前
Rust 的 redis-rs 库
开发语言·redis·rust
楚Y6同学7 小时前
基于 Haversine 公式实现【经纬度坐标点】球面距离计算(C++/Qt 实现)
开发语言·c++·qt·经纬度距离计算
技术净胜7 小时前
Python 操作 Cookie 完全指南,爬虫与 Web 开发实战
前端·爬虫·python