IE滤镜切换效果演示
CSS filter:RevealTrans 用法:
Filter:revealtrans(duration=转换的秒数,transition=转换的类型)
CSS的RevealTrans动态滤镜是一个神奇的滤镜,它能产生23种动态效果
Transition值效果:
0 : 矩形收缩转换。
1 : 矩形扩张转换。
2 : 圆形收缩转换。
3 : 圆形扩张转换。
4 : 向上擦除。
5 : 向下擦除。
6 : 向右擦除。
7 : 向左擦除。
8 : 纵向百叶窗转换。
9 : 横向百叶窗转换。
10 : 国际象棋棋盘横向转换。
11 : 国际象棋棋盘纵向转换。
12 : 随机杂点干扰转换。
13 : 左右关门效果转换。
14 : 左右开门效果转换。
15 : 上下关门效果转换。
16 : 上下开门效果转换。
17 : 从右上角到左下角的锯齿边覆盖效果转换。
18 : 从右下角到左上角的锯齿边覆盖效果转换。
19 : 从左上角到右下角的锯齿边覆盖效果转换。
20 : 从左下角到右上角的锯齿边覆盖效果转换。
21 : 随机横线条转换。
22 : 随机竖线条转换。
23 : 随机使用上面可能的值转换。
其中23比较特别,是随机效果,程序默认就是随机效果。

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
</head>
<body>
<div id="dimg" style="width:150px;height:150px;yellow;filter:revealTrans(duration=1,transition=12); background-color:Yellow;">
<div id="dinner" style="width:130px;height:130px;background-color:blue;"></div>
</div>
<input type="button" value="内部消失" onclick="var dimg=document.getElementById('dimg');dimg.filters[0].apply
();var dinner=document.getElementById('dinner');dinner.style.visibility='hidden';dimg.filters[0].play();" />
<input type="button" value="消失" onclick="var dimg=document.getElementById('dimg');dimg.filters[0].apply();dimg.style.visibility='hidden';dimg.filters[0].play();" />
<input type="button" value="显示" onclick="var dimg=document.getElementById('dimg');dimg.filters[0].apply();dimg.style.visibility='';dimg.filters[0].play();" />
</body>
</html>
可以看到在上面的例子中,内部的div dinner继承了外层div dimg的滤镜效果:revealTrans(duration=1,transition=12);,在点击内部消失和消失后dinner都用闪点方式消失了
但是,如果对dinner应用绝对定位或相对定位后,它将不继承外层div的滤镜特性(CSS特性导致),那么怎么办呢?别慌我们稍作修改同样可以得到与上面例子相同的效果,请看下面的例子:

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>无标题页</title>
</head>
<body>
<div id="dimg" style="width:150px;height:150px;yellow;filter:revealTrans(duration=1,transition=12); background-color:Yellow;">
<div id="dinner" style="width:130px;height:130px;background-color:blue;filter:revealTrans(duration=1,transition=12); position:absolute;"></div>
</div>
<input type="button" value="内部消失" onclick="var dinner=document.getElementById('dinner');dinner.filters[0].apply
();dinner.style.visibility='hidden';dinner.filters[0].play();" />
<input type="button" value="消失" onclick="var dinner=document.getElementById('dinner');dinner.filters[0].apply
();dinner.style.visibility='hidden';dinner.filters[0].play();var dimg=document.getElementById('dimg');dimg.filters[0].apply();dimg.style.visibility='hidden';dimg.filters[0].play();" />
<input type="button" value="显示" onclick="var dimg=document.getElementById('dimg');dimg.filters[0].apply();dimg.style.visibility='';dimg.filters[0].play();" />
</body>
</html>
可以看到这次我们对内部div dinner也设置了滤镜效果,而且在消失和内部消失按钮上我们不再让dimg来控制dinner的滤镜效果(因为dinner在position:absolute;的时候根本就不会继承父div dimg的滤镜特性),我们专门对dinner的滤镜效果进行了控制:var dinner=document.getElementById('dinner');dinner.filters[0].apply();dinner.style.visibility='hidden';dinner.filters[0].play();好了点击两个消失按钮看看,效果和例1一模一样~
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架