最近在一些网站上看到一个不错的图片效果,当鼠标移到图片上时,会有一道闪光在图片上划过,看上去还挺酷的;其实像这种这样的效果如果应用到网页上,通常是使用CSS3来实现的。 CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation,对于各个属性的用法这时就不说了,想了解的请自行百度。如果需要CSS电子书教程的请戳 HTML5和CSS3实战;下面是实现鼠标经过图片时力图片闪光效果的实现。 HTML代码: <p class="overimg"> <a href="http://www.codetc.com"> <img src="http://www.codetc.com/data/attachment/portal/201503/20/201044djj54krtz614ag6n.jpg"> </a> <i class="light"></i> </p>CSS代码: .overimg{ position: relative; display: block; /* overflow: hidden; */ box-shadow: 0 0 10px #FFF; } .light{ cursor:pointer; position: absolute; left: -204px; top: 0; width: 204px; height: 250px; background-image: -moz-linear-gradient(0deg,rgba(255,255,255,0),rgba(255,255,255,0.5),rgba(255,255,255,0)); background-image: -webkit-linear-gradient(0deg,rgba(255,255,255,0),rgba(255,255,255,0.5),rgba(255,255,255,0)); transform: skewx(-25deg); -o-transform: skewx(-25deg); -moz-transform: skewx(-25deg); -webkit-transform: skewx(-25deg); } .overimg:hover .light{ left:204px; -moz-transition:0.5s; -o-transition:0.5s; -webkit-transition:0.5s; transition:0.5s; }
大体思想是,设计一个透明层i,使用CSS3 transform 属性skewX在X轴上做了负25度的变形,背景颜色用的是CSS3的线性渐变linear-gradient,然后hover的时候,设置0.5s的动画时间。
文章来源 CODETC,欢迎分享,转载请注明地址:
http://www.codetc.com/article-158-1.html
|