站三界导航
首页 CSS代码CSS实现背景图片模糊——毛玻璃效果 | 浅谈CSS属性 filter、backdrop-filter

CSS实现背景图片模糊——毛玻璃效果 | 浅谈CSS属性 filter、backdrop-filter

  • CSS代码
  • 来源:站三界导航
  • 62阅读
  • 2023-04-14

应用场景:在音乐类的项目,会有让图片当背景模糊的效果

如下图:

毛玻璃效果

一、使用filter: blur()

二、backdrop-filter: blur()

补充:filter、backdrop✨✨

一、使用filter: blur()

⭐⭐⭐


filter: blur(),把图片变模糊的同时,四周也会模糊,没有边界,就不好看哈哈


给它一个父级元素,父元素控制宽高,超出部分隐藏


css

.bg {
        position: fixed;
        width: 450px;
        height: 253px;
        overflow: hidden;
      }
      .bg-image {
        width: 100%;
        filter: blur(5px);
      }
      .bg-image::after {
        content: "";
        display: block;
        background: rgba(0, 0, 0, 0.5);
        z-index: 1;
      } 
html :

<div class="bg">
      <img src="./images/动漫.jpg" alt="" class="bg-image" />
    </div>
预览效果:

虽然四周是清晰了,但是还是会看见白色的边边。


二、backdrop-filter: blur()

⭐⭐⭐⭐⭐


原本图片,想要毛玻璃效果,给它加滤镜(注意,并不是图片模糊化,是给它加滤镜)


1.背景固定,背景的宽高要和图片一致

在添加另外一个元素(即为滤镜),给它设透明度和模糊值

给背景和滤镜设置z-index:-1, 使用负值降低优先级,防止添加在模糊图片上的文字图片模糊


代码:

css:

.bg-image,
      .inner {
        position: fixed;
        top: 0;
        left: 0;
        width: 450px;
        height: 253px;
        z-index: -1;
      }
      .inner {
        background: rgba(0, 0, 0, 0.5);
        backdrop-filter: blur(5px);
      } 
html:

<div class="bg-image">
      <img src="./images/动漫.jpg" alt="" class="img" width="100%" />
      <div class="inner"></div>
</div> 
预览效果:

这样就是我们要的效果了,nice~


补充:filter、backdrop✨✨

✨✨


推荐去mdn官网看哦: MDN


filter

mdn文档这样介绍:

CSS属性 filter 将模糊或颜色偏移等图形效果应用于元素。滤镜通常用于调整图像、背景和边框的渲染。




blur

filter: blur() 单位是px

越大越模糊


opacity

filter: opacity()

透明度,设置元素的透明度在0~1之间

0:完全透明

1:无效


grayscale

filter: grayscale()

使图片变灰


blablabla~~

和我我下面总结的属性都是一致的(太累了,不想打了,用到啥就去搜吧嘿嘿)



2. backdrop-filter


mdn文档这样介绍:

backdrop-filter CSS 属性可以让你为一个元素后面区域添加图形效果(如模糊或颜色偏移)。因为它适用于元素背后的所有元素,为了看到效果,必须使元素或其背景至少部分透明。


也就是说给图片加了一层滤镜(我是这样理解的)

常见属性:

backdrop-filter: blur(); //高斯模糊滤镜
backdrop-filter: brightness(); //图片明亮度滤镜
backdrop-filter: contrast(); //对比度滤镜
backdrop-filter: drop-shadow();//阴影滤镜
backdrop-filter: grayscale();//灰度滤镜
backdrop-filter: hue-rotate();//色相滤镜
backdrop-filter: invert();//反转滤镜
backdrop-filter: opacity();//透明度滤镜
backdrop-filter: sepia();//深褐色滤镜
backdrop-filter: saturate();//饱和度滤镜

示例:

括号里面为他们所用的值和单位

backdrop-filter: blur(2px);
backdrop-filter: brightness(60%);
backdrop-filter: contrast(40%);
backdrop-filter: drop-shadow(4px 4px 10px blue);
backdrop-filter: grayscale(30%);
backdrop-filter: hue-rotate(120deg);
backdrop-filter: invert(70%);
backdrop-filter: opacity(20%);
backdrop-filter: sepia(90%);
backdrop-filter: saturate(80%);

本文结束
本文来自投稿,不代表站三界导航立场,如若转载,请注明出处:https://www.zhansanjie.com/article/details/40469.html

版权声明:

1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

2、本站仅提供信息发布平台,不承担相关法律责任。

3、若侵犯您的版权或隐私,请联系本站管理员删除。

4、本文由会员转载自互联网,如果您是文章原创作者,请联系本站注明您的版权信息。

分享
站三界导航
本站声明:本站严格遵守国家相关法律规定,非正规网站一概不予收录。本站所有资料取之于互联网,任何公司或个人参考使用本资料请自辨真伪、后果自负,站三界导航不承担任何责任。在此特别感谢您对站三界导航的支持与厚爱。