本文向大家描述一下CSS层叠样式表控制闪烁效果,一段文本或一张图片,它的周围有一圈光晕,这圈光晕每一秒钟闪烁一次,而当鼠标移到上面时,立即停止闪烁,当鼠标移开时又继续闪烁。这种效果用于那些需要特别引起别人注意的内容上(如:警示、报告新增内容等),能起到较好的效果。
CSS层叠样式表控制闪烁效果
一段文本或一张图片,它的周围有一圈光晕,这圈光晕每一秒钟闪烁一次,而当鼠标移到上面时,立即停止闪烁,当鼠标移开时又继续闪烁。这种效果用于那些需要特别引起别人注意的内容上(如:警示、报告新增内容等),能起到较好的效果。
上面这个示例就能实现上面所的效果,由于这里是抓取的一张图片,不能看到动态效果,只要按下面介绍的方法,制作一个试试,其效果是一目了然的。其制作思路是:采用了CSS的“Glow”滤镜产生光晕效果,利用CSS的属性可动态改变的特性,用一小段Javascript程序来每一秒钟改变一次属性值,从而实现闪烁的效果,再用两个事件(onmouseover和onmouseout)调用Javascript程序来控制是否闪烁。
制作方法:
1、制作一个Glow滤镜,CSS滤镜的设置方法请参看“CSS滤镜应用技巧”的有关文章。在此不再重复。不是使用Dreamweaver的网友,请把下面的代码复制到网页源代码的〈head〉与〈/head〉之间:
〈styletype="text/css"〉
〈!--
.glow1{filter:glow(color=#FF0000,strengh=2)}
--〉
〈/style〉
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
2、插入一个图层,取名为:bob。在图层上写上一段文字。再在图层上加载一个Glow滤镜,并加上两个事件以实现当鼠标移到文字上时强制停止闪烁,当鼠标移开文字时继续闪烁。代码:onclick="stopflash(this)",这句代码的作用是:一旦鼠标移到文字上,将调用程序的“stopflash(this)”函数来停止闪烁;onmouseout="init()",这句代码的作用是:一旦鼠标移开文字,将调用程序的“init()”函数来使光晕闪烁。本例完成后图层标记的代码是这样的:
〈divid="bob"style="position:absolute;
width:572px;height:35px;z-index:1"class="glow1"
onmouseover="stopflash(this)"onmouseout="init()"〉
- 1.
- 2.
- 3.
- 4.
- 5.
3、在〈head〉与〈/head〉之间插入这样一段Javascript程序:
〈script〉
〈!--
functioninit()//光晕开始闪烁
{
makeflash(bob);
}
functionmakeflash(obj)
{
obj.flashTimer=setInterval
("bob.filters.glow.enabled=!bob.filters.glow.enabled",1000)
}//这里的“1000”是闪烁的时间,以毫秒计,
在本例中是设置了1000毫秒(即1秒),可以根据需要修改。
functionstopflash(obj)//光晕停止闪烁
{clearInterval(obj.flashTimer)
}
//--〉
〈/script〉
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
4、在网页源代码的〈body〉标记中加上这样一段代码:onload="init()"。这句代码的作用是当网页载入时,光晕开始闪烁。
至此,制作结束,按F12就可看到预期的效果了。
光晕的颜色和光晕的长度均可修改CSS滤镜中的参数值来改变,光晕闪烁的时间间隔可通过修改Javascript中的间隔时间值来调整。若是在图层中插入图片(透明背景的gif图片效果更好),则变为图片边缘的光晕闪烁效果。
【编辑推荐】