Alan's blog Alan's blog
首页
思考感悟
技术学习
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Alan wu

前端小时
首页
思考感悟
技术学习
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 计算机基础

  • 架构设计

  • HTTP网络

  • Node

  • 小程序

  • 设计

  • JavaScript

  • HTML&CSS

    • 带你一文玩转CSS滤镜
      • 01 前言
      • 02 属性效果
        • blur
        • brightness
        • contrast
        • grayscale
        • hue-rotate
        • invert
        • opacity
        • saturate
        • sepia
      • 03 小结
    • 一次读懂flex布局
  • 浏览器

  • webpack

  • 运维

  • Vue&React

  • 技术
  • HTML&CSS
alanwu
2022-08-14
目录

带你一文玩转CSS滤镜

# 带你一文玩转CSS滤镜

给背景图披上不一样的衣服

# 01 前言

随着新技术的发展,越来越多的css属性被浏览器所支持,而且更新速度也十分地快。css属性的增多,可以使网页的颜色多样化,更加的丰富。对用户体验上来说都是一件好事,用户的接受度会普遍增加。

在2014年底,css滤镜已经被列入W3C的滤镜效果模块工作草案。接下来介绍不同的滤镜会有什么样的效果:

  • blur
  • brightness
  • contrast
  • grayscale
  • hue-rotate
  • invert
  • opacity
  • saturate
  • sepia

# 02 属性效果

我们使用两个不一样的图片,来验证属性的效果。这是一开始的未经过处理的图片和背景图。

# blur

blur可以给元素添加高斯模糊,只要写入模糊半径参数即可。半径可以使用css的任何单位,可以使用px、em、rem甚至cm。半径越大,滤镜效果就会强,但是不能使用百分比来表示,不然浏览器会认为是无效值,默认应用none。

# brightness

亮度brightness滤镜接受百分比值。当亮度为100%时就会是原来未经处理的颜色,属性值可以在0%~100%之间调整,减少到0就会变成黑色。

# contrast

对比度contrast可以使用百分比单位,当对比度为0时,高亮部分和阴影部分的对比就比较弱,当对比度超过100%时就会比较强烈。

# grayscale

灰度滤镜可以给背景蒙上一层灰色,当灰度值达到100%时,整个元素就会变成灰色。当国家纪念日比如南京大屠杀纪念日,很多网站都会变成灰色,就是把背景加上100%的灰度值即可。

# hue-rotate

色调旋转可以使颜色发生旋转,参数为旋转度数。

# invert

反色invert可以使颜色发生反转。当你从0开始到50%,颜色会慢慢变暗。从50%到100%颜色反转并逐渐加深。

# opacity

透明度,我们已经用的比较多了,元素参数可以使用数字或者百分比来表示。

# saturate

饱和度滤镜,参数使用百分比来表示,超过100%会让饱和度过高。

# sepia

褐色。可以使元素蒙上一层褐色,与其他元素类似都是使用百分比来表示。

# 03 小结

如今CSS可以用来做更多的事情了,而且渲染效率也是非常高的。比如我们之前实现动画都会使用JS来写,现在就可以使用css动画来做了,关于这一块下次再写。大家可以自行实现一下上面的滤镜效果。

编辑 (opens new window)
上次更新: 2023/05/13, 23:08:05
函数作用域、闭包与this指向问题
一次读懂flex布局

← 函数作用域、闭包与this指向问题 一次读懂flex布局→

最近更新
01
HTTPS:让数据传输更安全
06-15
02
沙盒:页面和系统之间的隔离墙
06-15
03
CSRF攻击:陌生链接不要随便点
06-15
更多文章>
Theme by Vdoing | Copyright © 2019-2023 Alan Wu | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式