使用纯 CSS 创建炫酷的翻转动画效果

发布于 2018-04-01 21:48:29 字数 2201 浏览 3213 评论 0

CSS3 动画是很有趣的,通过简单少量的代码,就能实现以前我们用 JavaScript 代码编写的效果,而且浏览器对于 CSS 的支持远远优于 JavaScript 的,这使得我们的 CSS 动画将更加的流程。这篇文章就给大家介绍如何使用 CSS 创建炫酷的翻转动画效果。

使用纯 CSS 创建炫酷的翻转动画效果

HTML 结构

所需要的 HTML 代码:

<div class="flip-container">
	<div class="flipper">
		<div class="front">
		<!-- front content -->
		</div>
		<div class="back">
		<!-- back content -->
		</div>
	</div>
</div>

这个翻转动画需要有两个面,就像想扑克牌一样,一个在前面一个在后面。

CSS 样式

对应的 CSS 样式代码:

/* entire container, keeps perspective */
.flip-container {
	perspective: 1000;
	transform-style: preserve-3d;
}
/*  UPDATED! flip the pane when hovered */
.flip-container:hover .back {
	transform: rotateY(0deg);
}
.flip-container:hover .front {
	transform: rotateY(180deg);
}

.flip-container, .front, .back {
	width: 320px;
	height: 480px;
}

/* flip speed goes here */
.flipper {
	transition: 0.6s;
	transform-style: preserve-3d;
	position: relative;
}

/* hide back of pane during swap */
.front, .back {
	backface-visibility: hidden;
	transition: 0.6s;
	transform-style: preserve-3d;

	position: absolute;
	top: 0;
	left: 0;
}

/*  UPDATED! front pane, placed above back */
.front {
	z-index: 2;
	transform: rotateY(0deg);
}

/* back, initially hidden pane */
.back {
	transform: rotateY(-180deg);
}

这里简单的解释下上面的 CSS 代码,使用定位将两个 DIV 重叠在一起,定义动画的类型为 3D 动画,动画为翻转 0 度,也就是默认现在的样子,定义动画的执行时间。

CSS 触发动画

当鼠标移动到元素上,我们就执行我们定义好的动画:

/* flip the pane when hovered */
.flip-container:hover .back, .flip-container.hover .back
	transform: rotateY(0deg);
}
.flip-container:hover .front, .flip-container.hover .front {
	transform: rotateY(180deg);
}

CSS 翻转动画是我们最简单和基本的动画类型,通过鼠标的操作,我们可以在同一个地方展示更多的内容,而且还有个很好看的动画效果,这对于网页的用户体验是极好的。

点击这里参看示例:http://run.wenjiangs.com/code/#/?code=7gGw1C37

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84961 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文