前端遮罩层的应用

最近微信小程序需要开发新手引导功能,发现需要在遮罩层中间抠一个洞出来,但是一直不知道该怎么去做,其实很简单,先展示源码:

复制代码
<template>
  <div class="num01">
    hello
    <div class="mask">
      sadasdasdassssssssssssssssssssssss
      <div class="hole"></div>
      <div class="test01"></div>
    </div>
  </div>
</template>

<style scoped>
.num01{
  background: linear-gradient(to right, #ff0000, #00ff00);
  width: 100vw;
  height: 100vh;
  display: flex;
}

.mask{
  background: rgba(128,128,128,0.5);
  width: 50%;
  height: 50%;
  top: 10%;
  left: 20%;
  mix-blend-mode: multiply;
  position: fixed;
}

.hole{
  width: 30%;
  height: 30%;
  top:15%;
  left:50%;
  position: relative;
  background: #fff;
}

.test01{
  width: 50%;
  height: 50%;
  top: 10%;
  left: 10%;
  position: relative;
  background: #000000;
}
</style>

ok,然后说一下原理

首先是设置一个盒子,在盒子上套一层遮罩,然后使用在遮罩上面抠出一个洞来

难点是如何扣除一个洞呢?需要在遮罩层加一个css样式:mix-blend-mode:multiply,功能是开启混合模式,会将该样式和子样式的颜色发生混合

然后将洞的颜色调成白色,这样就能显示出类似于一个洞的效果

相关推荐
看谷秀1 小时前
arkts-10 实战
前端·arkts
范小兵1 小时前
# DevEco CLI实战:鸿蒙App「至客」从0开发到正式上架
前端·harmonyos
半生过往1 小时前
前端工程师学习智能体开发(一)
前端·学习·状态模式
白雾茫茫丶1 小时前
Vibecoding 一个主题切换动画库:13 种揭幕方式
前端·vue.js·react.js
计算机魔术师1 小时前
谷歌宣布 TPU 互联架构支持 100 万芯片规模,电力供应成 AI 基建核心瓶颈
前端
雪芽蓝域zzs1 小时前
第四十九节:TagsView 右键菜单(带三角箭头)给每个 tag 增加**鼠标右键菜单**(右键标签弹出:关闭、关闭其他、关闭全部)
前端·javascript·vue.js
এ慕ོ冬℘゜2 小时前
从零开发移动端医院挂号页面:适配、交互与前端实现详解
前端·javascript
掘金挖土2 小时前
前端手摸手跑路之 AI 应用开发(六)
前端·后端
liuyt20222 小时前
【javaweb】day4
前端
志尊宝3 小时前
Vue3 零基础每日笔记(024):组件的创建与使用——从 import 到自动导入
前端·vue.js·笔记·前端框架·html5