gsap实现一个旋转交互的心情骰子三维效果代码

代码语言:html

所属分类:三维

代码描述:gsap实现一个旋转交互的心情骰子三维效果代码

代码标签: gsap 旋转 交互 心情 骰子 三维

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开


<!DOCTYPE html>
<html lang="en" >

<head>

  <meta charset="UTF-8">
  


  
<style>
:root {
  --baseColor: #341f97;
  --contrastColor: #c8d6e5;
  --strokeColor: #222f3e;
}

body {
  background-color: var(--baseColor);
}

.cube {
  height: 150px;
  transform-style: preserve-3d;
  width: 150px;
  position: absolute;
  top: calc(50% - 75px);
  left: calc(50% - 75px);
  perspective-origin: 50% 50%;
  transform-style: preserve-3d;
  transform: rotate3d(1, 1, 0, 45deg);
}
.cube__side {
  height: 100%;
  position: absolute;
  width: 100%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.cube__side:after {
  content: "";
  right: 0;
  border-radius: 10%;
  bottom: 0;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--contrastColor);
  transform: scale(0.9);
  z-index: -1;
}
.cube__side--top {
  transform: rotateX(90deg) translateZ(75px);
}
.cube__side--bottom {
  transform: rotateX(-90deg) translateZ(75px);
}
.cube__side--left {
  transform: rotateY(-90deg) translateZ(75px);
}
.cube__side--right {
  transform: rotateY(90deg) translateZ(75px);
}
.cube__side--front {
  transform: translateZ(75px);
}
.cube__side--back {
  transform: rotateY(180deg) translateZ(75px);
}
</style>




</head>

<body >
  <div class="cube">
	<div class="cube__side cube__side--bottom">
		<svg viewBox="25 25 50 50" aria-labelledby="smileID smileID" role="img">
			<title id="smileID">Smiley face</title>
			<path class="" fill="none" stroke="var(--strokeColor)" stroke-width="2.5" stroke-linecap="round" d="M 45 53.5 Q 50 57.5 55 53.5" />
			<ellipse class="" cx="40" cy="50" fill="var(--strokeColor)" stroke-width="0" rx="2.75" ry="2.75" />
			<ellipse class="" cx="60" cy="50" fill="var(--strokeColor)" stroke-width="0" rx="2.75" ry="2.75" />
		</svg>
	</div>
	<div class="cube__side cube__side--left">
		<svg viewBox="25 25 50 50" aria-labelledby="frownID frownID" role="img">
			<title id="frownID">Sad face</title>
			<path class="" fill="none" stroke="var(--strokeColor)" stroke-width="2.5" stroke-linecap="round" d="M 45 54.5 Q 50 49.5 55 54.5" />
			<ellipse class="" cx="40" cy="50" fill="var(--strokeColor)" stroke-width="0" rx="2.75" ry="2.75" />
			<.........完整代码请登录后点击上方下载按钮下载查看

网友评论0