3D拖动商品展示详情页特效
代码语言:html
所属分类:电商
下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>3D Drag out menu with guitar</title>
<style>
@import url("https://fonts.googleapis.com/css?family=Heebo:400,500,800,900&display=swap");
:root {
--bg: #efdece;
}
h4 {
color: white;
margin: 0;
padding-top: 20px;
text-align: center;
}
canvas {
position: absolute;
z-index: 1;
opacity: 0.6;
pointer-events: none;
}
.dynamicCursor {
max-width: 50px;
min-width: 18px;
transition: width 0s;
background: transparent !important;
border: 2px solid white !important;
}
@-webkit-keyframes in {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
@keyframes in {
from {
opacity: 0;
}
to {
opacity: 1;
}
}
body {
padding: 0;
background: #a92913;
padding: 0;
margin: 0;
box-shadow: 50vw 0 #381313 inset;
height: 100vh;
font-family: 'Heebo', sans-serif;
-webkit-user-select: none;
/* Chrome all / Safari all */
-moz-user-select: none;
/* Firefox all */
-ms-user-select: none;
/* IE 10+ */
user-select: none;
/* Likely future */
}
body .phone {
position: absolute;
left: 0;
right: 0;
margin: auto;
top: 50%;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}
body .guitar {
width: 85px;
height: 175px;
z-index: 10;
position: absolute;
transition: all 0.7s 0.3s cubic-bezier(0.5, 0.005, 0.075, 0.985), transform 0.1s 0.7s, -webkit-transform 0.1s;
left: 92px;
-webkit-transform: scale(1.8);
transform: scale(1.8);
top: 130px;
background-size: 1920px !important;
background: url(http://repo.bfw.wiki/bfwrepo/image/gt.png);
-webkit-animation: guitar2 0.5s 0s steps(23, end) forwards;
animation: guitar2 0.5s 0s steps(23, end) forwards;
}
@-webkit-keyframes guitar {
0% {
background-position: 0 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
10% {
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
100% {
background-position: -1840px 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
}
@keyframes guitar {
0% {
background-position: 0 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
10% {
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
100% {
background-position: -1840px 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
}
@-webkit-keyframes guitar2 {
0% {
background-position: -1840px 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
10% {
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
100% {
background-position: 0 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
}
@keyframes guitar2 {
0% {
background-position: -1840px 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
10% {
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
100% {
background-position: 0 0;
-webkit-transform: scale(1.8);
transform: scale(1.8);
}
}
body .phone {
opacity: 0;
-webkit-animation: in 1s .5s forwards;
animation: in 1s .5s forwards;
width: 245px;
height: 489px;
-webkit-perspective: 900;
perspective: 900;
border-radius: 24px;
overflow: hidden;
border-radius: 40px;
box-shadow: 0 0 40px 10px rgba(0, 0, 0, 0.3);
-webkit-box-reflect: below 4px linear-gradient(to top, white -120%, rgba(255, 255, 255, 0) 25%);
}
body .phone.open .guitar {
-webkit-animation: guitar 0.5s 0s steps(23, end) forwards;
animation: guitar 0.5s 0s steps(23, end) forwards;
}
body .phone.open .phone_inner__nav {
left: 170px;
}
body .phone.open .phone_inner__nav h3 {
opacity: 0;
}
body .phone.open .phone_inner__cube {
-webkit-transform: rotateY(90deg);
transform: rotateY(90deg);
left: 50px;
}
body .phone.open .phone_inner__cube h2 {
opacity: 0;
-webkit-transform: translateZ(50px);
transform: translateZ(50px);
}
body .phone_frame {
width: 245px;
height: 489px;
position: absolute;
z-index: 2;
background: url("http://repo.bfw.wiki/bfwrepo/image/frameIphone.png");
pointer-events: none;
}
body .phone_inner {
width: 225px;
height: 475px;
position: relative;
left: 10px;
top: 6px;
overflow: hidden;
-webkit-transform-style: preserve-3D;
transform-style: preserve-3D;
background: #ada59c;
}
body .phone_inner__nav {
position: absolute;
z-index: 2;
text-transform: uppercase;
text-align: center;
width: 100%;
font-weight: 400;
transition: all 0.5s cubic-bezier(0.615, 0, 0.28, 1.005);
top: 39px;
left: 0;
}
body .phone_inner__nav h3 {
margin: 0;
font-size: 9px;
opacity: 1;
transition: all 0.5s cubic-bezier(0.615, 0, 0.28, 1.005);
}
body .phone_inner__nav .menu {
width: 18px;
height: 2px;
background: #111114;
position: absolute;
left: 16px;
}
body .phone_inner__nav .menu:after {
content: '';
display: block;
position: relative;
top: 2px;
width: 18px;
height: 2px;
background: #111114;
}
body .phone_inner__nav .menu:before {
content: '';
display: block;
position: relative;
top: 9px;
width: 10px;
height: 2px;
background: #111114;
}
body .phone_inner__cube {
-webkit-transform-style: preserve-3D;
transform-style: preserve-3D;
height: 100%;
position: relative;
left: 0;
transition: all 0.509s cubic-bezier(0.615, 0, 0.28, 1.005);
}
body .phone_inner__cube .shadow img {
position: absolute;
width: 210px;
top: 90px;
left: 20px;
}
body .phone_inner__cube h1 {
text-transform: uppercase;
margin: 0;
-webkit-transform-origin: 0 50%;
transform-origin: 0 50%;
position: absolute;
line-height: 0;
left: 47px;
letter-spacing: 3px;
top: 92px;
color: #c6bdad;
font-size: 55px;
text-shadow: 0 0 1px #bdb5ad;
-webkit-transform-style: preserve-3D;
transform-style: preserve-3D;
}
body .phone_inner__cube h1:nth-of-type(1) {
-webkit-transform: rotate(90deg) translateZ(-0.9583333333px);
transform: rotate(90deg) translateZ(-0.9583333333px);
}
body .phone_inner__cube h1:nth-of-type(2) {
-webkit-transform: rotate(90deg) translateZ(-0.9166666667px);
transform: rotate(90deg) translateZ(-0.9166666667px);
}
body .phone_inner__cube h1:nth-of-type(3) {
-webkit-transform: rotate(90deg) translat.........完整代码请登录后点击上方下载按钮下载查看
















网友评论0