一、前言
在编写前端页面的动画效果时,或多或少会用到 filter 属性,由于其属性值过多,故本篇用于整理和记录其相关资料。
二、介绍
filter属性定义了元素(通常是)的可视效果。
属性值如下:
属性值 |
描述 |
none |
默认值,没有效果。 |
blur(px) |
给图像设置高斯模糊,则默认值是 0。 |
brightness(%) |
给图片应用一种线性乘法,使其看起来更亮或更暗,默认值是 1。 |
contrast(%) |
调整图像的对比度,默认值是 1。 |
grayscale(%) |
将图像转换为灰度图像,默认值是 0。 |
hue-rotate(deg) |
给图像应用色相旋转,默认值是 0deg。 |
invert(%) |
反转输入图像,默认值是 0。 |
opacity(%) |
转化图像的透明程度,默认值是 1。 |
saturate(%) |
转换图像饱和度,默认值是 1。 |
sepia(%) |
将图像转换为深褐色,默认值是 0。 |
注意:滤镜通常使用百分比 (如:75%), 当然也可以使用小数来表示 (如:0.75)。
三、演示代码
- <!DOCTYPE html>
- <html lang="zh">
- <head>
- <meta charset="UTF-8">
- <title>Document</title>
- <style>
- .container {
- margin: 4rem auto;
- width: 100%;
- height: auto;
- text-align: center;
- }
-
- .box {
- display: inline-block;
- margin: 1rem;
- }
-
- .box ul {
- margin: 0;
- padding: 0;
- list-style: none;
- text-align: left;
- }
-
- .box ul li {
- margin: .25rem 0;
- padding: .25rem;
- cursor: pointer;
- }
-
- .box ul li:hover {
- background-color: #eee;
- }
-
- ul li.active {
- background-color: #eee;
- }
-
- .box img {
- width: 260px;
- height: 260px;
- }
-
- </style>
- </head>
- <body>
- <div class="container">
- <h3>点击左侧属性显示效果</h3>
- <div class="box">
- <ul>
- <li data-p="blur(5px)">filter: blur(5px)</li>
- <li data-p="brightness(.5)">filter: brightness(.5)</li>
- <li data-p="contrast(.5)">filter: contrast(.5)</li>
- <li data-p="grayscale(1)">filter: grayscale(1)</li>
- <li data-p="hue-rotate(90deg)">filter: hue-rotate(90deg)</li>
- <li data-p="invert(.4)">filter: invert(.4)</li>
- <li data-p="opacity(.4)">filter: opacity(.4)</li>
- <li data-p="saturate(.5)">filter: saturate(.5)</li>
- <li data-p="sepia(.5)">filter: sepia(.5)</li>
- </ul>
- </div>
- <div class="box">
- <div class="origin">
- <img src="https://tva3.sinaimg.cn/large/87c01ec7gy1frmmmwb3anj21hc0u0b2a.jpg" alt="">
- </div>
- <div>原图</div>
- </div>
- <div class="box">
- <div id="filter">
- <img src="https://tva3.sinaimg.cn/large/87c01ec7gy1frmmmwb3anj21hc0u0b2a.jpg" alt="">
- </div>
- <div id="info">效果图</div>
- </div>
- </div>
- <script src="https://cdn.jsdelivr.net/npm/jquery@3.6.0/dist/jquery.min.js"></script>
- <script>
- $(function() {
- let $lis = $("li");
- $lis.on("click", function() {
- $lis.removeClass("active");
- let p = $(this).addClass("active").data("p");
- $("#filter").css({"filter": p});
- $("#info").text("filter: " + p);
- });
- });
- </script>
- </body>
- </html>
以上就是css3 filter属性的使用简介的详细内容,更多关于css3 filter属性的资料请关注w3xue其它相关文章!