CSS sepia() 函数

CSS sepia() 语法

在 CSS 中,sepia() 函数一般作为 filter 属性的值,用于实现元素的 “复古效果”。使用 sepia() 函数,可以实现 “老照片” 效果。

语法:

filter: sepia(amount);

说明:

amount 是一个介于 0 到 1 之间的值(或 0% 到 100%),它表示棕褐色滤镜的强度。

  • 0 或 0%:表示无效果,元素保持原始颜色。
  • 1 或 100%:表示完全应用棕褐色滤镜,元素呈现强烈的复古色调。
  • 介于 0 和 1:表示部分效果。

提示: sepia() 的值大于 1 时会被限制为 1,并且不支持负值。如果设置为负数,则该声明会被浏览器忽略。

CSS sepia() 摘要

属于 CSS 滤镜
使用频率
兼容性 查看
官方文档 查看
MDN 查看

CSS sepia() 示例

接下来,我们通过几个简单的例子来讲解一下 CSS sepia() 函数是如何使用的。

示例 1:sepia() 实现复古图片

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
    <style>
        img {
            filter: sepia(1);
        }
    </style>
</head>
<body>
    <img src="imgs/bird.jpg" alt="">
</body>
</html>

页面效果如下图所示。

sepia() 实现复古图片

分析:

filter: sepia(1) 表示将图片完全转换为棕褐色调,从而显示出强烈的复古效果。sepia() 函数非常适合用于将照片转换成 “复古” 效果。

示例 2:sepia() 实现部分棕褐色效果

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
    <style>
        img {
            filter: sepia(0.5);
        }
    </style>
</head>
<body>
    <img src="imgs/bird.jpg" alt="">
</body>
</html>

页面效果如下图所示。

sepia() 实现部分棕褐色效果

分析:

filter: sepia(0.5) 表示使用 50% 的棕褐色滤镜,此时图片会保留部分原始颜色,并同时带有轻微的复古色调。

示例 3:sepia() 结合其他滤镜函数

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
    <style>
        img {
            filter: sepia(0.7) brightness(0.8) contrast(1.2);
        }
    </style>
</head>
<body>
    <img src="imgs/bird.jpg" alt="">
</body>
</html>

页面效果如下图所示。

sepia() 结合其他滤镜函数

分析:

filter: sepia(0.7) brightness(0.8) contrast(1.2);

上面代码表示同时使用了 3 种滤镜效果,说明如下:

  • sepia(0.7) 表示使用 70% 的棕褐色滤镜。
  • brightness(0.8) 表示将亮度变为原来的 80%。
  • contrast(1.2) 表示将对比度变为原来的 1.2 倍。

示例 4:sepia() 实现动态滤镜效果

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title></title>
    <style>
        img {
            filter: sepia(0.3);
            transition: filter 0.5s ease;
        }
        img:hover {
            filter: sepia(1);
        }
    </style>
</head>
<body>
    <img src="imgs/bird.jpg" alt="">
</body>
</html>

默认情况下,页面效果如下图 1 所示。当鼠标移到 div 元素上时,页面效果如下图 2 所示。

sepia() 动态滤镜效果 1

sepia() 动态滤镜效果 2

分析:

在这个例子中,我们使用 transition 属性定义了一个过渡效果。鼠标移到图片上时,图片会从 30% 的棕褐色滤镜平滑过渡到 100%,从而实现动态的复古效果。

上一篇: saturate()

下一篇: cubic-bezier()

给站长反馈

绿叶网正在不断完善中,小伙伴们如果发现任何问题,还望多多给站长反馈,谢谢!

邮箱:lvyenet@vip.qq.com

「绿叶网」服务号
绿叶网服务号放大
关注服务号,微信也能看教程。
绿叶网服务号