在下面我将讲解如何使用 CSS 的这个功能实现调整色调、模糊、亮度、对比度和一些其他的效果。
需要用到 filter 函数中:
grayscale函数
grayscale
用于调整元素的灰度值。参数范围为0-1,0表示无效果,1表示灰度最大。
用法:filter: grayscale(1)
。
contrast函数
contrast调整元素的对比度。默认值为1,表示与原图一致,取值小于1时,对比度降低,取值大于1时表示对比度增大。
用法:filter: contrast(1) ,中间的值根据情况调整。
brightness函数
brightness
用于调整元素的亮度。范围为0-1,0表示全黑,1表示最亮。
用法:filter: brightness(0)
,显示为黑色。
其中:还会用到mix-blend-mode 混合混合模式来增加强光。
mix-blend-mode: hard-light;// 强光
接下来咱们附上源码:
HTML代码:
<!DOCTYPE html><html><head><meta charset="utf-8" /><link rel="stylesheet" href="css/style.css" /><title>将彩色照片转换为黑色肖像</title></head><body><div class="box"><img src="./img/img2.png" /></div><div class="box"><img src="./img/img2.png" /></div></body></html>
css代码:
* {margin: 0;padding: 0;}body {display: flex;justify-content: center;align-items: center;min-height: 100vh;}.box {position: relative;width: 50%;height: 100vh;overflow: hidden;}.box img {position: absolute;top: 0;left: 0;width: 100%;height: 100%;object-fit: cover;}.box:nth-child(2) img {filter: grayscale(1) contrast(5);}.box:nth-child(2) img:nth-child(2) {filter: grayscale(1) contrast(1) brightness(2);mix-blend-mode: hard-light;}
结果就不供上了,自行运行即可!!