动画图片翻转
另一个前端工程师常见的现象是,当用户将鼠标放到图片上时,变换为另一张图片。在这个技巧中,让我们看看如何让图片从一个到另一个渐变交换,而不是简单的直接交换两张图片。实现这个效果的CSS和HTML如下:
div.swapper img { -webkit-transition: opacity 1s ease-in-out; } img.img1, div.swapper:hover img.img2 { opacity: 1.0; } div.swapper:hover img.img1, img.img2 { opacity: 0; }
<div class="swapper"> <img class="img1" style="position: absolute;" src="megan.jpg"> <img class="img2" src="megan2.jpg"> </div>
在这里,”transition”属性使用简化符号来指定(图片)过渡的所有参说。第一个参数将属性指定为动画,第二个参数指定时间,第三个参数为简便指定时间功能。”ease-in-out”只是众多你可以只有支配的时间功能中的一个。你还可以指定一个线形变换、渐入、渐出或高级的立体贝塞尔曲线效果!
你可以自己亲身体验一下这个效果,你将会看到下图中的效果。

截图4. 一个CSS只能制定一个渐变效果
设想: 纯CSS的渐变效果!
CSS 多卷布局
使用纯CSS实现多卷,而不用HTML的table是件相当棘手的事情。由于CSS3用于多卷布局的属性在Safari和WebKit中已经可用,你可以明确的定义卷数,正确实现你所想要的效果。先看一下下面的CSS和HTML代码:
#columns { -webkit-column-count: 3; -webkit-column-gap: 25px; -moz-column-count: 3; -moz-column-gap: 25px; column-count: 3; column-gap: 25px; }
<div id="columns"> <p>Column A</p> <p>Column B</p> <p>Column C</p> </div>
这些代码定义了卷中的HTML代码。这些代码定义了这个DIV应该被分成3卷。每个段落就在他们自己的卷里面。
这些代码同样说明了一种在使用一种尚未成为W3C标准的一部分时的可靠机制.这段代码指定了”column-count”和”column-gap”属性,并带有”-webkit”和”-moz”前缀,以及没有前缀的情况。这意味着这段代码将会像基于Mozilla的浏览器一样可以在Safari和WebKit的浏览器中运行,而且一旦CSS3标准被最终确定下来之后,那些前缀就可以去掉了。
你可以在下面看到效果:

截图5. 多卷
使用这种方法, 如果浏览器不支持多卷布局,段落将一个接着一个显示。正如本文前面提到的,这些方法在不支持它们的浏览器中会被降级(也就是无效)。
出处:前端观察
责任编辑:bluehearts
上一页 用于WebKit的CSS诀窍 [1] 下一页 用于WebKit的CSS诀窍 [3]
◎进入论坛网页制作、WEB标准化版块参加讨论,我还想发表评论。
|