website/random/3dtest/effect.css
2024-04-22 03:13:17 -05:00

104 lines
1.9 KiB
CSS

body {
width: 100vw;
height: 100vh;
}
#clickMe {
position: absolute;
width: 200px;
height: 200px;
font-size: 40px;
top: 50%;
left: 50%;
translate: -50% -50%;
border-radius: 0;
border: 10px solid #FF00FF;
transform: translateZ(100px);
}
.scene {
width: 200px;
height: 200px;
perspective: 600px;
position: relative;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
#cube {
width: 100%;
height: 100%;
position: relative;
transform-style: preserve-3d;
display: none;
}
#cube > div {
position: absolute;
height: 200px;
width: 200px;
}
#cube0 { transform: rotateY( 0deg) translateZ(100px); }
#cube1 { transform: rotateY( 90deg) translateZ(100px); }
#cube2 { transform: rotateY(180deg) translateZ(100px); }
#cube3 { transform: rotateY(-90deg) translateZ(100px); }
#cube4 { transform: rotateX( 90deg) translateZ(100px); }
#cube5 { transform: rotateX(-90deg) translateZ(100px); }
.face-image {
box-sizing: border-box;
width: 100%;
height: 100%;
object-fit: cover;
border: 10px solid #FF00FF;
opacity: 0.5;
}
@keyframes rotate3d {
0% {
transform:
rotateY(0deg)
rotateX(0deg)
rotateZ(0deg);
}
25% {
transform:
rotateY(90deg)
rotateX(360deg)
rotateZ(90deg);
}
50% {
transform:
rotateY(180deg)
rotateX(720deg)
rotateZ(180deg);
}
75% {
transform:
rotateY(270deg)
rotateX(1080deg)
rotateZ(270deg);
}
100% {
transform:
rotateY(360deg)
rotateX(1440deg)
rotateZ(360deg);
}
}
@keyframes scale {
0% {
scale: 1 1.4 1;
}
50% {
scale: 1.4 1 1.4;
}
100% {
scale: 1 1.4 1;
}
}