css+div实现花岗岩三角形错觉立体多边形动画效果代码

代码语言:html

所属分类:动画

代码描述:css+div实现花岗岩三角形错觉立体多边形动画效果代码

代码标签: css div 花岗岩 三角形 错觉 立体 多边形 动画

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

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

<head>
 
<meta charset="UTF-8">
 

 
 
 
<style>
* {
        transform-style: preserve-3d;
}

body {
        margin: 0;
        height: 100vh;
        background: linear-gradient(315deg, #0d0a0b 0%, #004942 74%);
        background: radial-gradient(circle at 50% 25%, #004942, #02111c);
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
}

body:before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background:    
                repeating-conic-gradient(#0003 0%, #fff0 .00033%, #fff0 .00066%,  #fff0 .00099%),
                repeating-conic-gradient(#fff2 0%, #fff0 .0005%, #fff0 .0015%, #fff0 .019%);
        filter:blur(1px);
}

.content {
        width: 90vmin;
        height: 60vmin;
        margin: 0 auto;
        justify-content: center;
        align-items: center;
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        perspective: 1500vmin;
        perspective-origin: center;
        filter: drop-shadow(-8vmin 12vmin 2vmin #0002);
}

.shape {
        transform: rotateX(-35deg) rotateY(-45deg);
        transition: all 2s ease-in-out 0s;
        animation: move 1.95s ease-in-out 0s 2 alternate;
        position: relative;
        top: -15vmin;
}

@keyframes move {
        0% { transform: rotateX(-35deg) rotateY(-45deg); }
        100% { transform: rotateX(-20deg) rotateY(-125deg) translateZ(-22vmin) translateY(5vmin); }
}

.content:hover .shape {
        transform: rotateX(-20deg) rotateY(-125deg) translateZ(-22vmin) translateY(5vmin);
        transition: all 2s ease-in-out 0s;
}

.content:hover .shape .cube .side:nth-of-type(2) {
        background: hsl(var(--hue), var(--sat), 80%);
}

.content:hover .shape .cube .side:nth-of-type(3) {
        background: hsl(var(--hue), var(--sat), 30%);
}

.cube {
        --width: 10;
        --height: 10;
        --depth: 10;
        height: calc(var(--height) * 1vmin);
        width: calc(var(--width) * 1vmin);
        --hue: 150;
        --sat: 25%;
        position: absolute;
}

.side {
        position: absolute;
        top: 50%;
        left: 50%;
        height: 100%;
        width: 100%;
        box-sizing: border-box;
}

.side:before, .side:after {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background:    
                repeating-conic-gradient(#0003 0%, #fff0 .0003%, #fff0 .0006%,  #fff0 .00099%),
                repeating-conic-gradient(#fff2 0%, #fff0 .0005%, #fff0 .0015%, #fff0 .019%);
        background-size: 102% 102%;
        filter: blur(0.5px);
}

.side:after {
        filter: blur(2px);
}

@keyframes light {
        0% { background: hsl(var(.........完整代码请登录后点击上方下载按钮下载查看

网友评论0