使用CSS混合模式轻松实现Mp4视频透明背景

我们知道如果想在一张背景图上加特效,就需要设计师在做视频的同时将背景图导入进去, 这无非是增加了工作量和维护成本,如果我们可以自己实现融合的效果就省了很多事。而mix-blend-mode属性恰好可以做到这点。

最终效果

定义

mix-blend-mode:该属性描述了元素的内容应该与元素的直系父元素的内容和元素的背景如何混合。
screen:最终的颜色是反转颜色(顶层颜色和底层颜色),相乘它们并反转该值的结果。黑色层不会造成变化,白色层导致白色最终层。其效果类似于投射到投影屏幕上的两个图像。

太抽象了,我们只需要理解当背景是黑色的时候,他就会变成透明,我们就是利用他的这个特性来实现透明背景。

代码示例

css 复制代码
<div class="container">
  <video class="video" src="../public/video6.mp4" autoplay muted loop />
</div>
.container {
  width: 400px;
  height: 400px;
  margin: 200px auto;
  background: url("../public/img1.jpeg") no-repeat;
  background-size: 100% 100%;
}
.video {
  width: 100%;
  height: 100%;
  mix-blend-mode: screen;
}

我们需要给video元素mured静音属性autoplay才会生效,然后我们让他循环播放,在video元素上加上mix-blend-mode: screen; 就这么简单,透明效果就做出来了。

相关推荐
原则猫8 小时前
HOOKS 背后机制
前端
码语智行8 小时前
首页导航跳转功能深度解析-系统内和系统外
前端
阿猫的故乡9 小时前
Vue过渡动画从入门到装X:淡入淡出、滑动、列表动画、第三方库全搞定
前端·javascript·vue.js
IManiy9 小时前
总结之Vibe Coding前端骨架
前端
JS菌9 小时前
AI Agent 沙箱双层防护体系:从权限过滤到内核隔离的完整实现
前端·人工智能·后端
Aphasia31110 小时前
从输入URL到页面展示全流程
前端·面试
我叫黑大帅10 小时前
前端如何竖屏固定视口背景
前端·javascript·面试
abcy07121310 小时前
python pandas csv异步后台清洗前端优先返回成功信息
前端·python·pandas
IT_陈寒10 小时前
Vite这个坑我帮你踩了,动态导入居然这样才生效
前端·人工智能·后端
swipe11 小时前
Mem0 x Agent 实战系列:分层记忆 + 三路召回,搭建真正可用的长期记忆层
前端·javascript·面试