CSS3实现卡片翻转动画效果

栏目: CSS3 · 发布时间: 6年前

内容简介:CSS3实现卡片翻转动画效果

今天写项目的时候,想要实现卡片翻转的这样的一个效果,学习了一下,做个小笔记吧。

还是先放效果图,或者点击这里查看效果

CSS3实现卡片翻转动画效果

实现

html

还是先放效果图,或者点击这里查看效果

<div class="box">
	<div class="card front"></div>
	<div class="card back"></div>
</div>

css

body{
			perspective: 1000px;
		}
		.box{
			margin: 50px auto;
		    width: 239px;
		    height: 334px;
		    position: relative;
		    transform-style: preserve-3d;
		    transition: transform 1s;
		}
		.card{
			display: block;
			  position: absolute;
			  width: 100%;
			  height: 100%;
			  backface-visibility: hidden;
			  border-radius: 20px;
		}
		.front{
			background-image: url(1.jpg);
    		background-position: -24px -23px;
		}
		.back{
			transform: rotateY(180deg);
			background-image: url(1.jpg);
    		background-position: -287px -23px;
		}
		.flipped{
			transform: rotateY(180deg);
}

js

$(".box").hover(function(event){
	$(this).toggleClass("flipped");
})

关键说明

preserve-3d

因为需要3d效果,所以在box这个div里要添加如下,表示3d透视

这个加上很关键!

transform-style: preserve-3d;

backface-visibility

给卡片加入下方代码,表示隐藏被旋转div元素的背面,这样旋转之后,第一张卡片是背面朝屏幕方向,看不到,第二张卡片旋转之后则是正面朝像屏幕,即形成了旋转的效果,主要用到这两个属性啦。

backface-visibility:hidden

rotateY()

这里的旋转都是绕着Y轴旋转,比较好理解。

恩,就是这样,比较简单啦。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法之美

算法之美

[美]布莱恩·克里斯汀、[美]汤姆·格里菲思 / 万慧、胡小锐 / 中信出版集团 / 2018-5-20 / 59.00

我们所有人的生活都受到有限空间和有限时间的限制,因此常常面临一系列难以抉择的问题。在一天或者一生的时光里,哪些事是我们应该做的,哪些是应该放弃的?我们对杂乱无序的容忍底线是什么?新的活动与熟悉并喜爱的活动之间如何平衡,才能取得令人愉快的结果?这些看似是人类特有的难题,其实不然,因为计算机也面临同样的问题,计算机科学家几十年来也一直在努力解决这些问题,而他们找到的解决方案可以给我们很多启发。 ......一起来看看 《算法之美》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试