css3实现文字卡片折叠效果

效果图

静态效果图
在这里插入图片描述
鼠标悬浮到标签上的效果
在这里插入图片描述

完整实现代码

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<title></title>
		<style type="text/css">
			* {
				margin: 0;
				padding: 0;
			}
			
			body,
			html {
				width: 100%;
				height: 100%;
			}
			
			body {
				background-color: #ff90b3;
			}
			/* transform: .5s; //过渡时间 */
			.text{
				width: 600px;
				margin: 250px auto 100px;
				display: inline-block;
				transform: .5s;
				display: flex;
			}
			.text span{
				background-color: #fff;
				font-size: 40px;
				color: #a0a0a0;
				width: 120px;
				height: 120px;
				text-align: center;
				line-height: 120px;
				transition: .3s;
				font-family: Arial, Helvetica, sans-serif;
			}
			/* 奇数位 */
			.text:hover span:nth-child(odd){
				transform: skewY(-25deg);
				color: #b5b5b5;
				box-shadow: 0 60px 20px rgba(0,0,0,.1);
			}
			/* 偶数位 */
			.text:hover span:nth-child(even){
				transform: skewY(25deg);
				color: #b5b5b5;
				box-shadow: 0 60px 20px rgba(0,0,0,.1);
			}
			
		</style>
	</head>
	<body>
		<section class="text">
			<span>W</span>
			<span>H</span>
			<span>A</span>
			<span>T</span>
			<span>F</span>
			<span>U</span>
		</section>
	</body>
</html>

总结

实现此折叠效果 主要使用了CSS3的 transform 属性 :
skew(x-angle,y-angle) 定义沿着 X 和 Y 轴的 2D 倾斜转换。
skewX(angle) 定义沿着 X 轴的 2D 倾斜转换。
skewY(angle) 定义沿着 Y 轴的 2D 倾斜转换。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章