网页中图片如何应用CSS的滤镜的效果

 

有时候,我们需要给网页中的图片加一些特殊的效果,比如透明、扭曲、阴影或者翻转等,我们一般都会想到用Photoshop等一些图形软件来处理,其实我们也可以利用CSS(层叠式样表)提供的一些滤镜来处理,这对于不熟悉Photoshop的网友来说,是非常好的一件事。

  我们先从较简单的开始,介绍几个没有参数的滤镜。

  1.Gray滤镜

  Gray滤镜的作用是产生黑白效果

  使用方法:

以下是引用片段:
<img src="a.gif" style="filter:gray"> 

  2.Invert滤镜

  Invert滤镜的作用是反色效果

  使用方法:

以下是引用片段:
<img src="a.gif" style="filter:invert"> 

  3.Xray滤镜

  Xray滤镜的作用是产生X光效果

  使用方法:

以下是引用片段:
<img src="a.gif" style="filter:xray"> 

  4.fliph和flipv

  fliph滤镜的作用是产生水平翻转效果;flipv滤镜的作用是产生垂直翻转效果

  使用方法:

以下是引用片段:
<img src="a.gif" style="filter:fliph">或<img src="a.gif" style="filter:flipv">

  5.alpha滤镜

  alpha滤镜作用主要是对图片的透明度进行处理

  使用方法:

以下是引用片段:
<img src="a.gif" style="filter:alpha(opacity=value1,finishopacity=value2,style=value3)"> 

  说明:value1为图片的透明值,范围是0(完全透明)~100(完全不透明)

  value2为图片透明度变换结束时的透明值,范围是0(完全透明)~100(完全不透明) 注:该值只有在value3设定时才有效

  value3为图片透明度变换方向。取值为1时,图片透明度按从左到右线性变化;取值为2时,图片透明度从内到外沿半径变化;取值为3时,图片透明度从内到外呈矩形变化

  例:

以下是引用片段:
<img src="a.gif" style="filter:alpha(opacity=0,finishopacity=60,style=2)"> 

  6.shadow滤镜

  shadow滤镜的作用是产生阴影效果

  使用方法:

以下是引用片段:
<img src="a.gif" style="filter:shadow(color=value1,direction=value2)"> 

  说明:value1为阴影的颜色值,如000000表示黑色

  value2为光线照射角度,如135

  例:

以下是引用片段:
<img src="a.gif" style="filter:shadow(color=000000,direction=135)"> 

  7.wave滤镜

  wave滤镜的作用是使图片产生扭曲效果

  使用方法:

以下是引用片段:
<img src="a.jpg" style="filter:wave(add=value1,freq=value2,lightstrength=value3,phase=value4,strength=value5)"> 

  说明:value1的取值为1时,将原图片增加到处理过的图片上;为0时,则不增加

  value2为视觉扭曲的波浪数

  value3是波形亮度百分比,取值范围为0~100

  value4为正弦波开始偏移的初始量,取值范围为0~100

  value5为波形效果的强度

  例:

以下是引用片段:
<img src="a.jpg" style="filter:wave(add=0,freq=5,lightstrength=50,phase=0,strength=5)"> 

  下面我们举一个简单的例子,浏览时会出现这样的一个效果:网页上有一个几乎透明的图像,当鼠标移到图像上时,图像慢慢变清晰;当鼠标移开时,图像又恢复到原来的透明状态。

  要实现这个功能,需要使用到CSS的alpha滤镜,并用javascript来控制alpha滤镜的Opacity值,首现在网页中插入一个图片,并设定alpha滤镜的opacity值,让图片透明,图片代码为:

以下是引用片段:
<img src="a.gif" id="me" style="FILTER:alpha(Opacity=20)">. 

      javascript代码如下:

以下是引用片段:
<script language="javascript"> 
function ch(n) 

if(n=="add") //如果传入的参数为add,则将图片的不透明度增大 
if(me.filters.alpha.Opacity<100) 

me.filters.alpha.Opacity=me.filters.alpha.Opacity+5; 
setTimeout("ch('add')",10); 


if(n=="dec") //如果传入的参数为dec,则将图片的不透明度降低 
if(me.filters.alpha.Opacity>20) 

me.filters.alpha.Opacity=me.filters.alpha.Opacity-5; 
setTimeout("ch('adc')",10); 


</script>

      将上面的代码加入<head></head>中,然后给图片加入onMouseOveronMouseOut动作,即

以下是引用片段:
<img src="a.gif" id="me" style="FILTER:alpha(Opacity=20)" onMouseOver="ch('add')" onMouseOut="ch('dec')">. 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值