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

[特殊字符] CSS 图片变黑变暗的 3 种方案,总有一款适合你!

最近在做项目的时候遇到一个很常见的需求如何让图片颜色更黑一点或者加一层黑色透明度遮罩很多人第一反应是用filter: brightness(0%)但其实这个方法有不少坑。今天就来聊聊3 种靠谱的 CSS 方案从简单到高级看完你就知道该选哪个了 为什么需要让图片变暗在实际开发中这种需求非常常见场景需求️ 图片上放白色文字图片太亮看不清字需要压暗背景 暗色主题网站整体风格偏暗图片需要配合 悬停效果hover 时图片变暗突出交互感 海报/Banner叠加黑色渐变营造氛围感 方案一使用filter最简单一行代码搞定这是最直接的方式不需要改动 HTML 结构直接在img标签上加样式就行。img{filter:brightness(0.7);} 参数说明参数含义效果brightness(1)原始亮度不变brightness(0.7)70% 亮度变暗 30% ✅brightness(0.5)50% 亮度变暗 50%brightness(0)0% 亮度纯黑 ⚫brightness(1.5)150% 亮度变亮 50% ☀️ 进阶组合使用效果更好img{filter:brightness(0.7)contrast(1.1)saturate(0.9);}滤镜作用brightness(0.7)降低亮度contrast(1.1)提升对比度让暗部更暗saturate(0.9)稍微降低饱和度避免颜色过艳✅ 优点✅ 代码最少一行搞定✅ 不需要改 HTML 结构✅ 性能好GPU 加速❌ 缺点❌ 会影响整个图片包括白色区域也会变灰❌ 无法精确控制只让透明区域变黑❌ 不够灵活想调整透明度比较麻烦 方案二伪元素叠加黑色半透明层⭐ 最推荐这是我最推荐的方案通过::after伪元素叠加一层黑色半透明遮罩精确控制、不影响原图、灵活度最高。 HTML 结构divclassimg-wrapperimgsrcphoto.jpgalt/div CSS 样式.img-wrapper{position:relative;display:inline-block;}.img-wrapper::after{content:;position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.3);/* 黑色 30% 透明度 */pointer-events:none;/* 关键不影响图片点击事件 */} 参数调节指南透明度效果适用场景rgba(0,0,0,0.1)微微变暗 轻微压暗保留细节rgba(0,0,0,0.3)明显变暗 文字叠加最常用 ✅rgba(0,0,0,0.5)大幅变暗 悬停效果rgba(0,0,0,0.8)接近全黑 强烈氛围感✅ 优点✅精确控制透明度想要多少暗就多少暗✅不影响原图随时可以去掉✅pointer-events: none保证不影响点击交互✅ 兼容所有浏览器没有兼容性问题❌ 缺点❌ 需要在img外面包一层div❌ 代码比filter多几行 方案三混合模式效果最自然 ✨如果你追求最自然的变暗效果可以试试mix-blend-mode混合模式。 CSS 样式.img-wrapper{position:relative;display:inline-block;}.img-wrapper::after{content:;position:absolute;top:0;left:0;width:100%;height:100%;background:black;mix-blend-mode:multiply;/* 正片叠底模式 */opacity:0.3;/* 30% 透明度 */pointer-events:none;} 常见混合模式对比混合模式效果推荐度multiply正片叠底✅ 变暗保留细节最自然⭐⭐⭐⭐⭐screen滤色变亮反过来用⭐⭐⭐overlay叠加同时变亮和变暗⭐⭐⭐⭐darken变暗只取暗色部分⭐⭐⭐✅ 优点✅ 效果最自然像专业 PS 调过一样✅ 亮的地方不变只有暗的地方更暗✅ 视觉上比filter更高级❌ 缺点❌ 兼容性稍差IE 不支持❌ 不如方案二直观好理解 三种方案终极对比对比项方案1filter方案2伪元素叠加 ⭐方案3混合模式代码量⭐ 最少⭐⭐ 中等⭐⭐ 中等灵活度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐效果自然度⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐浏览器兼容⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐是否需要改HTML❌ 不需要✅ 需要包一层div✅ 需要包一层div推荐场景快速 demo生产环境首选✅追求极致效果 最终推荐你的需求推荐方案快速实现不想改结构 方案1filter生产环境追求稳定方案2 伪元素叠加⭐追求极致视觉效果 方案3 混合模式我的建议日常开发直接用方案2代码不多效果可控兼容性完美是最稳妥的选择。 写在最后看似一个简单的图片变暗需求其实藏着不少细节。选对方法不仅能让效果更好还能让代码更易维护。你平时用哪种方案欢迎在评论区交流如果觉得有用记得 ⭐ 收藏 点赞下次找起来不迷路

相关文章:

[特殊字符] CSS 图片变黑变暗的 3 种方案,总有一款适合你!

最近在做项目的时候,遇到一个很常见的需求:如何让图片颜色更黑一点,或者加一层黑色透明度遮罩? 很多人第一反应是用 filter: brightness(0%),但其实这个方法有不少坑。今天就来聊聊 3 种靠谱的 CSS 方案,从…...

告别 AI 失忆!基于 Harness 记忆模型,解密 SpreadContext 多实例同步引擎

在日常与企业级客户及前端开发者的交流中,我经常听到这样的痛点:“我们成功接入了大模型,但它总是‘睁眼瞎’。用户在表格里改了数据,AI 不知道;AI 修改了单元格,UI 没有同步。聊了几轮之后,大模…...

从零实现大语言模型:Transformer架构、自注意力机制与PyTorch实战

1. 项目概述:从零构建大语言模型的实践指南 最近几年,大语言模型(LLM)无疑是技术领域最耀眼的存在。从ChatGPT的横空出世到各类开源模型的百花齐放,它们展现出的理解和生成能力令人惊叹。然而,对于许多开发…...

Postman+Newman自动化测试报告生成全攻略:让微信小程序接口回归测试5分钟搞定

PostmanNewman自动化测试报告生成全攻略:让微信小程序接口回归测试5分钟搞定 在追求研发效能的今天,手工重复执行接口测试已成为效率瓶颈。想象一下:每次微信小程序迭代更新,测试工程师都需要在Postman中逐个点击上百个接口用例&a…...

嵌入式飞行控制实战:从传感器融合到PID调参的无人机飞控开发指南

1. 项目概述与核心价值最近在嵌入式开发圈子里,一个名为trsdn/nanopielot的项目引起了我的注意。乍一看这个名字,它像是一个针对特定硬件平台(比如树莓派 Pico 或类似的 RP2040 微控制器)的飞行控制项目。nanopi可能指代 NanoPi 系…...

TortoiseSvn与TortoiseGit:从零开始的安装与汉化实战指南

1. TortoiseSvn与TortoiseGit:版本控制界的"瑞士军刀" 第一次接触代码版本管理时,我完全被命令行劝退了。直到发现了TortoiseSvn和TortoiseGit这两个神器——它们就像给Windows资源管理器装上了版本控制的"外挂",所有操作…...

Agentica:模块化AI智能体框架的设计、实现与生产部署指南

1. 项目概述:当AI智能体遇上开源协作最近在AI智能体这个圈子里,一个名为“Agentica”的项目开始引起不少开发者的注意。它不是一个单一的AI应用,而是一个由wrtnlabs团队发起的开源项目,旨在构建一个模块化、可扩展的AI智能体框架。…...

幽默面试:Java SE 与微服务的探讨

面试官与水货程序员的幽默对话:Java SE 与微服务的探讨 在一个互联网大厂的面试现场,严肃的面试官坐在桌前,准备开始与求职者燕双非的技术探讨。燕双非是一个搞笑的程序员,今天他将面临一系列关于Java SE和微服务的面试问题。第一…...

AI智能体信用评分系统:构建可评估、可管理的多智能体协作框架

1. 项目概述:一个为AI智能体设计的信用评分系统最近在折腾AI智能体(Agent)的落地应用时,我遇到了一个挺有意思的问题:当多个智能体协同工作,或者一个智能体需要调用外部工具、API时,如何评估和追…...

互联网大厂 Java 求职面试:从 Spring Boot 到微服务与云原生的技术探讨

互联网大厂 Java 求职面试:从 Spring Boot 到微服务与云原生的技术探讨 场景介绍:在一家知名互联网大厂的面试现场,面试官是一位严肃的技术专家,而候选人燕双非则是一位幽默风趣的程序员。面试官准备了一系列问题,涵盖…...

基于数据科学的宠物性格分析:从行为量化到性格画像的工程实践

1. 项目概述与核心价值最近在逛GitHub的时候,发现了一个挺有意思的项目,叫petsonality。光看名字,你大概就能猜到它和“宠物”(Pets)以及“性格”(Personality)有关。没错,这是一个通…...

3 万粉丝公众号变现实录:技术社区如何做到月入 5 万 +

摘要:从 0 到 3 万 粉丝,3 万 社群成员,一个技术类公众号的完整运营路径。本文拆解内容定位、合作模式、变现策略,全是实操经验,没有虚的。 封面文案:技术公众号变现全攻略 开篇:说实话&…...

极简静态站点生成器Minima:从核心原理到工程实践

1. 项目概述:一个极简静态站点的构建哲学 最近在整理个人博客和项目文档时,我又一次把目光投向了静态站点生成器。市面上选择很多,从功能庞大的Hugo、Jekyll,到追求速度的Zola、11ty,各有拥趸。但当我需要一个纯粹、轻…...

UPS 蓄电池在线监控系统是什么?工业 UPS 电源有必要安装吗?

在机房、工业生产、医疗设备等依赖 UPS 不间断电源的场景中,蓄电池往往被视为设备的 “心脏”。很多用户配置了优质 UPS 电源,却忽略了对蓄电池的实时管理,等到突发停电才发现电池亏电、失效,导致 UPS 无法正常供电,引…...

PointLLM:让大语言模型看懂三维点云,实现具身智能与机器人交互

1. 项目概述:当大语言模型“睁开双眼”看世界最近在机器人感知与交互领域,一个名为 PointLLM 的项目引起了我的注意。它来自 InternRobotics,核心目标直指一个非常前沿且有趣的问题:如何让大语言模型(LLM)直…...

国省考备考常见 10 大误区 上岸考生总结

作为上岸过来人,我太懂 “努力却没结果” 的无力。其实公考失败,大多不是不够努力,而是踩了本可以避开的坑。这 10 条避坑指南,覆盖备考方向、复习方法、心态调整,全是实战总结的干货,帮备考的你少走弯路。…...

Rust服务脚手架:快速构建生产级微服务的标准化起点

1. 项目概述:为什么我们需要一个Rust服务脚手架?在当今的微服务与云原生架构浪潮中,快速启动一个健壮、可维护的后端服务是每个开发团队的核心诉求。如果你和我一样,厌倦了每次开启新项目时,都要重复搭建项目结构、配置…...

政府新媒体宣发审核和监测对内容合规有哪些意义

在政务新媒体全谱系发展的今天,信息发布面临着意识形态安全、法律合规、公民隐私保护等多重考验。建立完善的宣发审核与监测机制,对保障内容合规具有决定性的意义,它是数字政府建设中不可或缺的“安全阀”与“过滤器”。以下是宣发审核和监测…...

ARM Cortex-A72 ETM架构解析与调试实践

1. ARM Cortex-A72 ETM架构概述嵌入式跟踪宏单元(Embedded Trace Macrocell, ETM)是ARM CoreSight调试架构中的核心组件,专为Cortex-A系列处理器设计。在Cortex-A72处理器中,ETMv4架构通过实时指令流追踪能力,为开发者提供了前所未有的调试可…...

在OpenClaw中快速接入Taotoken实现AI助手功能

🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 在OpenClaw中快速接入Taotoken实现AI助手功能 OpenClaw是一款功能强大的AI助手工具,能够帮助开发者进行代码生成、问题…...

API管理平台能力与数据盘点

API管理平台是现代企业IT架构中的核心组件,承担着接口设计、发布、运维、安全管控及生态开放等关键职责。不同平台在功能深度、性能指标和行业实践上各有积累。本文基于公开资料,对五款API管理平台的核心能力与关键数据进行客观梳理,以表格与…...

基于Circuit Playground Express与MakeCode的动感火焰球DIY制作全攻略

1. 项目概述:打造你的专属动感火焰球如果你玩过《魔兽世界》,一定对凯尔萨斯逐日者手中那团标志性的魔法火焰印象深刻;或者,你也曾幻想过像马里奥兄弟一样,投掷出酷炫的火球。现在,这个幻想可以变成你Cospl…...

Sealos云操作系统:基于Kubernetes内核的桌面化云原生平台实践

1. 项目概述:从“集群”到“桌面”的云原生新范式如果你和我一样,长期在云原生领域摸爬滚打,那么对“Kubernetes集群”的部署和管理一定不会陌生。从早期的kubeadm手动搭建,到后来各种发行版和托管服务,我们一直在追求…...

企业微信社群运营太耗人力?API自动化方案实战分享

通过 QiWe API RPA 自动化能力,实现企业微信社群从拉群、维护到触达的全流程自动化运营。社群运营在私域体系中很重要,但也是最“吃人力”的环节之一:拉群、邀请客户全靠人工群公告、活动通知重复发送群成员管理耗时且容易出错多个社群需要反…...

Beige CSS框架:现代CSS Grid与变量驱动的极简前端开发实践

1. 项目概述:一个被低估的现代CSS框架如果你和我一样,在过去的几年里,已经厌倦了Bootstrap、Tailwind CSS这些“巨无霸”框架带来的审美疲劳和项目同质化,同时又对从零开始手写CSS的繁琐感到头疼,那么今天聊的这个项目…...

CircuitPython内存优化:冻结模块原理与嵌入式开发实践

1. 项目概述:当微控制器项目撞上内存墙在嵌入式开发的世界里,尤其是玩转像Adafruit Circuit Playground Express这类资源受限的微控制器时,我们常常会与一个无形的“天花板”迎头相撞——内存限制。你可能正兴致勃勃地为你的智能徽章或互动艺…...

艾尔登法环性能优化解决方案:帧率解锁与游戏体验增强

艾尔登法环性能优化解决方案:帧率解锁与游戏体验增强 【免费下载链接】EldenRingFpsUnlockAndMore A small utility to remove frame rate limit, change FOV, add widescreen support and more for Elden Ring 项目地址: https://gitcode.com/gh_mirrors/el/Elde…...

Arm架构在中国市场的潜力与挑战:从技术选型到实践落地

1. 项目概述:从一次技术选型引发的深度思考最近在为一个边缘计算项目做硬件选型,团队里关于采用x86还是Arm架构的服务器争论了好几天。这让我想起,这几年在国内的云计算、数据中心、甚至个人消费电子领域,Arm架构的声音是越来越响…...

朋升爱生活

我爱生活。...

网络出口IP管理工具ipman:原理、使用与实战指南

1. 项目概述与核心价值最近在折腾网络工具和代理配置时,发现了一个挺有意思的开源项目,叫twisker/ipman。乍一看这个名字,可能会联想到IP地址管理,但实际上,它的定位更偏向于一个轻量级的、用于在特定网络环境下管理和…...