简单说 CSS中的mask—好好利用mask-image

【CSS】mask-image属性的详细介绍 mask-image属性定义了一个图像的遮罩层,该遮罩层将应用于元素的内容上。只有遮罩图像的非透明部分才会显示元素的内容,而透明部分则会隐藏内容。>`none:默认值,表示不应用遮罩图像。、SVG等格式。:CSS渐变(如线性渐变或径向渐变),用于生成遮罩图像。mask-image属性是CSS中一个强大的工具,允许开发者通过图像来遮罩元素的内容。通过合理使用这个属性,可以创建出各种复杂的视觉效果,提升用户体验。 阅读详情
AI摘要

本文详细介绍了 CSS 中的 mask 属性,特别是 mask-image 的使用方法,包括如何利用它来实现图像的屏蔽效果,并展示了如何结合动画实现动态效果。

说明

CSS中的 mask 属性允许用户屏蔽或剪裁特定点的图像来实现,部分或完全隐藏某个元素的可见性。
好吧,这个概念可能有点不好理解,先看图。

这里写图片描述

看了这个等式,似乎明白点什么了吧,朋友们,第一张图就是一张普通的图,第二张图,黑色部分是不透明的,白色部分是透明的,用上 mask 之后,两张图重叠,黑色区域中的会显示出来,白色区域不显示。

用过 ps 的朋友,应该很清楚,蒙版这东西,这就和蒙版很像,好吧,没用过 ps 的朋友,又要问蒙版是什么了,相信看完这篇文章,你应该连蒙版也知道了。

mask 和 background 用法是相仿的,mask 的值有这些

mask-clip
mask-composite
mask-image
mask-mode
mask-origin
mask-position
mask-repeat
mask-size
mask-type

具体细节参考这里:
CSS background 属性
CSS mask 属性

解释

由于目前,只有webkit内核的浏览器支持 mask 属性,所以考虑到兼容性的话,用mask 属性的时候还是要想想的。

今天我们主要说说 mask-image,这个比较有意思,这两个单词翻译过来就是,面具 图片,的确很形象,真的就像是给元素带上一个面具一样。
我们直接上代码,把上面提到那个等式,实现一下,顺便说一句,mask-image 和 background-image 一样,不仅可以取值是 图片路径,也可以是渐变色。

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">

  <style>
	.mask{
		width:475px;
		height:260px;
		background-image:url("https://img-blog.youkuaiyun.com/20170701221659356");

		/* 取值是图片路径 */
		-webkit-mask-image:url("https://img-blog.youkuaiyun.com/20170701221732018");
	}
  </style>
 </head>
 <body>
	<div class="mask"> </div>
 </body>

</html>

background-image
这里写图片描述

-webkit-mask-image
这里写图片描述

效果图
这里写图片描述

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">

  <style>
	.mask{
		width:475px;
		height:260px;
		background-image:url("https://img-blog.youkuaiyun.com/20170701221659356");

		/* 取值是渐变色 */
		-webkit-mask-image:linear-gradient(blue, transparent);
	}
  </style>
 </head>
 <body>
	<div class="mask"> </div>
 </body>

</html>

效果图

这里写图片描述

我再善意的提醒下,-webkit-mask-image 的值应该是一张,背景是透明色的图,或者说有透明色,而透明色的区域,最后都是不显示的。

下面是 mask 和 animation 配合完成的一个效果

效果图

这里写图片描述

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">

  <style>
	 @keyframes mask{
		0% {-webkit-mask-position:0px 0px;}
		25% {-webkit-mask-position:619px 0px;}
		50% {-webkit-mask-position:0px 0px;}
		75% {-webkit-mask-position:308px 0px;-webkit-mask-size:100%;}
		100% {-webkit-mask-size:1000%;}
	 }

	.mask{
		width:700px;
		height:392px;
        background:black url("http://www.kkkk1000.com/images/mask-image/1534750163.jpg");
        -webkit-mask-image:url("http://www.kkkk1000.com/images/mask-image/1534750222.jpg");
		animation:mask 5s linear infinite forwards;
	}
  </style>
 </head>
 <body>
	<div class="mask"> </div>
 </body>

</html>

总结

说了这么多相信你也一定明白mask-image属性了,如果还是不清楚,那就多看看下面这张图吧!!!
这里写图片描述

“蒙”出花样!用 CSS Mask 实现丝滑视觉魔法 然而有些站点为了实现上述过渡效果, 简单粗暴的在容器底部覆盖了一层渐变背景图!而更好的效果应该是有个完美的过渡效果, 这里我们就可以使用蒙版来处理: 如下代码所示, 蒙版是一个渐变, 从下到上, 渐变透明度从。最终效果如下, 蒙版白色部分元素完全可见, 黑色部分元素不可见, 中间灰色过渡对应的就是元素可见度的过渡。中的遮罩操作, 无需借助复杂的图像处理。无论是实现渐隐文字、柔和的图像遮罩, 还是动态的。中用来定义蒙版效果的一个属性。模式之外还有其他的模式吗?最后效果如下, 容器底部文字硬生生的被切断了。 阅读详情

相关推荐

使用mask-image与渐变实现复杂的遮罩动画

首先,咱们得搞清楚。

weixin_41455464的博客 520

CSS MASK

CSS MASK的简单学习

weixin_41897680的博客 9544

微信小程序消息推送全攻略:从模板消息到订阅消息的实战避坑指南

本文深入解析微信小程序消息推送机制,对比模板消息、订阅消息与客服消息的核心差异与适用场景。重点提供订阅消息从用户授权设计、前端代码实现到后端稳定发送的完整实战指南,并分享提升消息点击率的文案与运营技巧,帮助开发者构建高效、用户友好的消息推送体系。

b3n4m5q6w7的博客 338

CSS系列(32)-- Mask详解

CSS之旅第三十二站

欢迎来到这里,希望文章能对你有所帮助 2665

Proteus 8.9仿真五路抢答器:从74LS148编码到NE555报警的保姆级电路拆解

本文详细解析了使用Proteus 8.9仿真五路抢答器的完整设计流程,从74LS148优先编码器到NE555定时报警电路。通过保姆级的电路拆解和芯片选型指南,帮助读者掌握数字电路中的编码、锁存、译码和定时等核心技术,实现稳定可靠的抢答系统仿真。

weixin_30836759的博客 380

微信小程序转化数据API自归因实战:PHP实现与2025升级要点解析

本文详细解析了2025年微信小程序转化数据API自归因的升级要点与PHP实战实现。核心变化包括接口地址更新、固定access_token的获取方式,以及新增timestamp与nonce等安全参数。文章提供了完整的PHP代码示例,帮助开发者高效完成数据上报,优化腾讯广告投放效果。

git9versioner的博客 989

mask属性是css3的吗_简单说 CSS中的mask—好好利用mask-image

说明CSS中的mask属性允许用户屏蔽或剪裁特定点的图像来实现,部分或完全隐藏某个元素的可见性。好吧,这个概念可能有点不好理解,先看图。看了这个等式,似乎明白点什么了吧,朋友们,第一张图就是一张普通的图,第二张图,黑色部分是不透明的,白色部分是透明的,用上mask之后,两张图重叠,黑色区域中的会显示出来,白色区域不显示。用过ps的朋友,应该很清楚,蒙版这东西,这就和蒙版很像,好吧,没用过ps的朋友...

weixin_39792393的博客 257

无人机蜂群作战设计技术详解

构建防御网络,拦截敌方无人机或导弹;无人机蜂群作战设计技术是一种创新的军事应用概念,它基于生物仿生学原理,通过先进的通信技术、自主导航与决策算法,将大量小型、低成本、功能各异的无人机组织成一个高度协同的群体,以执行复杂多样的军事任务。无人机蜂群作战的概念源于自然界中蜜蜂、蚂蚁等生物群体的行为模式,这些生物群体通过简单的个体间的信息交互和分工协作,能够完成远远超出单一个体能力的复杂任务。其中,无人机群体是执行任务的主体,指挥控制系统负责任务分配和决策,通信数据链则保障无人机群体与指挥控制系统之间的信息交换。

专注多旋翼、复合翼无人机技术研究,从事低空经济行业。 2217

CSS mask遮罩

一、CSS mask遮罩的过往和现状 CSS mask遮罩属性的历史非常久远了,远到比CSS3 border-radius等属性还要久远,最早是出现在Safari浏览器上的,差不多可以追溯到09年。 不过那个时候,遮罩只能作为实验性的属性,做一些特效使用。毕竟那个年代还是IE浏览器的时代,属性虽好,但价值有限。 但是如今情况却大有变化,除了IE和Edge浏览器不支持,Firefox,Chrome以...

巧克力很苦的小博客 2万+

Codex 100个真实案例 - 用AI绘制CAD机械图纸(工程师看了直呼内行)

本案例将展示如何用 Codex 生成 Python 脚本,通过 `ezdxf` 库绘制标准 DXF 格式的 CAD 机械图纸。我们会从零开始,逐步实现直线、圆、圆弧、标注等基本图形元素,最终绘制出一张包含主视图、俯视图、尺寸标注、标题栏和技术要求的完整法兰盘零件图。还会演示参数化批量生成不同规格零件图和自动 BOM 物料清单,生成的 DXF 文件可直接在 AutoCAD、FreeCAD 中打开。全程用自然语言驱动 Codex,工程师看完直接上手!

yueyeguzhuo的专栏 2084

Matlab 轴承信号仿真+分析

文章目录项目说明1、信号仿真1.1 仿真公式1.2 信号参数设置1.3 代码实现2、仿真信号分析2.1 小波变换2.2 快速谱峭度 项目说明 本文主要解决两个问题: 1、仿真包含周期性冲击信号、随机干扰冲击信号、调制干扰信号以及随机噪声四个成分的故障轴承信号; 2、使用小波变换以及快速谱峭度对该仿真信号进行分析。 1、信号仿真 1.1 仿真公式 这里的仿真信号公式主要参考了包文杰学者的硕士论文《加权谱峭度故障诊断方法研究与应用》,列举公式如下: 周期性冲击信号仿真 随机干扰冲击信号仿真 调制

cocofisher的博客 9269

css遮罩mask_使用mask-image属性在CSS中遮罩图像

css遮罩maskWe covered the use of the clip-path property for clipping using CSS, so it’s only natural that we now go over masking. Contrary to clipping, where a part of an image or element is either comp...

2647

Unity必学:Protobuf-net预编译实战

本文深入解析Unity项目使用Protobuf-net Precompile的必要性。作为高效跨平台序列化方案,Protobuf-net解决了Unity工程在网络同步、存档系统中的性能瓶颈,特别是针对iOS等AOT平台的兼容问题。通过预编译模式,将运行时反射转为静态代码生成,显著提升移动端性能表现,支持协议平滑升级,已成为大厂项目的标配方案。文章从原理、实践到多平台适配,全面展示了这一"序列化发动机"如何支撑现代Unity项目的数据传输需求。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 495

CSS 利用mask-image遮罩剪裁各种各样图案

CSS 利用mask-image遮罩剪裁各种各样图案 先看效果 实现 我随便从网上找了几张不规则的图,用来演示剪切出的各种图案。 <img src="./logo.jpg" alt="" class="cover"> <img src="./logo.jpg" alt="" class="cover start"> <img src="./logo.jpg" alt="" class="cover leng"> <style&gt

ymszss的博客 2042

openlayers:实现在连续更改时间维度时如何平滑地重新加载层 (附完整源码)

openlayers:实现在连续更改时间维度时如何平滑地重新加载层 (附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 349

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

使用 mask-image 属性在 CSS 中屏蔽图像

在 CSS 中引入该属性之前,开发人员不得不使用其他技术在 Web 上创建遮罩效果。一种常见的方法是使用透明的 PNG 图像作为“遮罩”,并使用该属性将其应用于元素。这将允许元素呈现 PNG 图像的透明度,从而有效地屏蔽掉对应于图像透明区域的元素部分。

分享身边生活经验blog 1820

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

mask属性是css3的吗_CSS的mask-image属性详解

这次给大家带来CSS的mask-image属性详解,使用CSS的mask-image属性注意事项有哪些,下面就是实战案例,一起来看一下。CSS mask遮罩属性的历史非常久远了,远到比CSS3 border-radius等属性还要久远,最早是出现在Safari浏览器上的,差不多可以追溯到09年。不过那个时候,遮罩只能作为实验性的属性,做一些特效使用。毕竟那个年代还是IE浏览器的时代,属性虽好,但价...

weixin_42497299的博客 562

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

mask-image实现聚光灯效果

前言 在前面两篇文章,我们介绍了背景图片,以及背景图片的裁剪、位置、尺寸、起始位置等等属性,相信通过前两章大概可以窥得CSS天机了吧。本文我们开始介绍其他关于图片的属性! mask-image 从名称上面 面具-图片,大概就知道这个属性是干嘛的,属性值是啥了。 用于设置元素上遮罩层的图像,可以放在所有元素上,甚至包括svg。 不知道有没有用过PS,在PS中有一个叫做蒙版的东西,蒙版是一种灰度图像。用黑色绘制的区域将隐藏,用白色绘制的区域将可见,而用灰度绘制的区域将以不同级别的透明度出现。 mask-imag

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 3905

如何利用 CSS 的mask - image属性实现元素的遮罩效果,有哪些应用场景?

简单来说,就是你能通过一张图或者一个渐变啥的,让元素的某些部分显示,某些部分隐藏,就像给元素戴了个“面具”一样。白色的部分图片会正常显示,透明的部分图片就会被隐藏,这样就形成了一个圆形的显示区域。在这个示例中,我们使用SVG路径创建了一个圆形的遮罩图像,并将其应用到图片上,使图片呈现出圆形的效果。就像上面的例子,你可以用不同的渐变或者图片作为遮罩,给图片搞出各种炫酷的效果。在不同的屏幕尺寸下,你可以用不同的遮罩来适配。在这个例子中,我们使用线性渐变创建了一个矩形遮罩,让图片只有中间部分显示,上下部分隐藏。

前端大白话 927

CSS mask-image:给元素 “戴” 上创意面具的隐藏技巧

CSS的mask-image属性能够通过图片或渐变的透明度控制元素显示区域,比clip-path更灵活,支持半透明过渡和复杂纹理。它支持图片遮罩实现特定形状显示、渐变遮罩创建渐隐效果、多重遮罩叠加以及动态动画交互。通过mask-size、mask-position等属性可精细控制遮罩效果,适用于圆形图片、光晕、卡片悬停等创意场景。

探索技术与生活 1487

【CSS】mask遮罩

css遮罩常见属性:mask-image;mask-repeat;mask-position;mask-clip;mask-origin;mask-size

weixin_46669844的博客 3555

mask属性是css3的吗_CSS mask-image属性详细介绍(小结)

CSS mask遮罩属性的历史非常久远了,远到比CSS3 border-radius等属性还要久远,最早是出现在Safari浏览器上的,差不多可以追溯到09年。不过那个时候,遮罩只能作为实验性的属性,做一些特效使用。毕竟那个年代还是IE浏览器的时代,属性虽好,但价值有限。但是如今情况却大有变化,除了IE和Edge浏览器不支持,Firefox,Chrome以及移动端等都已经全线支持,其实际应用价值已...

weixin_42355252的博客 340

研究 CSS mask-image 与 clip-path 的异同与组合规则

理解它们的异同以及组合规则,能帮助我们更好地控制页面的视觉呈现,创造出更具吸引力的用户界面。在前端开发中,我们经常需要对元素进行视觉上的裁剪,创造出各种各样的形状和效果。遮罩图像的透明或半透明区域会使元素相应的部分变得透明,而不透明区域则保持可见。在这里,我们使用椭圆作为裁剪路径,所以呈现的形状会是一个椭圆。元素的超出裁剪路径的部分会被隐藏。这个例子使用线性渐变作为遮罩,从左侧的黑色渐变到右侧的透明色。会在点击按钮时切换遮罩图像的 URL,从而实现动态改变遮罩效果。好的,我们开始今天的讲座,主题是CSS。

weixin_41455464的博客 652
上一篇: 简单说 eval 函数
下一篇: 简单说 一道JS闭包面试题
FEWY
FEWY 领域专家: 前端开发技术领域 领域专家: 前端开发技术领域
博客等级 码龄10年 504粉丝 77原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值