div+css实现号角乐器效果代码

代码语言:html

所属分类:布局界面

代码描述:div+css实现号角乐器效果代码

代码标签: div css 号角 乐器

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

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">





    <style>
        *, *::before, *::after {
            box-sizing: border-box;
        }
        
        html {
            width: 100%;
            height: 100%;
        }
        
        body {
            width: 100%;
            height: 100%;
            margin: 0;
            display: flex;
            position: relative;
            justify-content: center;
            align-items: center;
            overflow: hidden;
            background: lightgoldenrodyellow;
            --unitSize: 1vmin;
        }
        
        img {
            display: block;
            width: 100%;
        }
        
        .symmetry {
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .transform {
            --x: 0;
            --y: 0;
            --r: 0;
            --s: 0;
            --_scale: 1;
            transform: scaleX(var(--_scale)) translateX(var(--x)) translateY(var(--y)) rotate(var(--r)) skew(var(--s));
        }
        
        .flipVertical {
            --x: 0;
            --y: 0;
            --r: 0;
            --s: 0;
            --_scale: -1;
            transform: scaleX(var(--_scale)) translateX(var(--x)) translateY(var(--y)) rotate(var(--r)) skew(var(--s));
        }
        
        .flipHorizontal {
            --x: 0;
            --y: 0;
            --r: 0;
            --s: 0;
            --_scale: -1;
            transform: scaleY(var(--_scale)) translateX(var(--x)) translateY(var(--y)) rotate(var(--r)) skew(var(--s));
        }
        
        .tracedImage {
            position: absolute;
            height: calc(var(--unitSize) * 73.2);
            width: unset;
            z-index: -1;
            opacity: 0.5;
            --r: 18deg;
            --y: calc(var(--unitSize) * 3);
            --x: calc(var(--unitSize) * 2);
            display: none;
        }
        
        .canvas {
            width: calc(var(--unitSize) * 80);
            height: calc(var(--unitSize) * 80);
            position: relative;
            /*border: calc(var(--unitSize) * 0.1) solid;*/
            /*opacity: 0.4;*/
        }
        
        .canvas *, .canvas *::before, .canvas *::after {
            position: absolute;
        }
        
        .trumpet {
            --lightGold: #ffdf42;
            --gold: gold;
            --slightlyDarkGold: #f6d000;
            --darkGold: #ecc700;
            --darkerGold: #debb00;
        }
        
        .bodyP1 {
            width: calc(var(--unitSize) * 20);
            height: calc(var(--unitSize) * 4);
            --y: calc(var(--unitSize) * -4);
            --x: calc(var(--unitSize) * 10.5);
            background: var(--gold);
        }
        
        .bodyP3 {
            width: calc(var(--unitSize) * 30);
            height: calc(var(--unitSize) * 4);
            --y: calc(var(--unitSize) * -4);
            --x: calc(var(--unitSize) * -14);
            border-radius: calc(var(--unitSize) * 1) 0 0 calc(var(--unitSize) * 1) / 50%;
            background: linear-gradient(90deg, var(--lightGold), var(--gold));
        }
        
        .bodyP2 {
            width: calc(var(--unitSize) * 40);
            height: calc(var(--unitSize) * 12);
            --y: calc(var(--unitSize) * 2);
            border-radius: calc(var(--unitSize) * 5);
            border: calc(var(--unitSize) * 2) solid var(--slightlyDarkGold);
            border-bottom-width: calc(var(--unitSize) * 3);
            --x: calc(var(--unitSize) * -4);
        }
        
        .bodyP4 {
            width: calc(var(--unitSize) * 30.9);
            height: calc(var(--unitSize) * 6.9);
            --y: calc(var(--unitSize) * 4.5);
            border-radius: calc(var(--unitSize) * 5);
            border: calc(var(--unitSize) * 2) solid var(--darkGold);
            border-bottom-width: calc(var(--unitSize) * 1);
            --x: calc(var(--unitSize) * -4);
        }
        
        .blower {
            border-radius: 50%;
            background: var(--gold);
            width: calc(var(--unitSize) * 4);
            height: calc(var(--unitSize) * 8);
            --x: calc(var(--unitSize) * -28.3);
            --y: calc(var(--unitSize) * -4);
        }
        
        .valve {
            width: calc(var(--unitSize) * 4.5);
            height: calc(var(--unitSize) * 17);
            --y: calc(var(--unitSize) * -0.5);
            --x: calc(var(--unitSize) * -13.8);
            border-radius: 50% 50% 0 0 / calc(var(--unitSize) * 1.5) calc(var(--unitSize) * 1.5) 0 0;
        }
        
        .valve::before {
            content: "";
            position: absolute;
            width: calc(var(--unitSize) * 4.5);
            height: 100%;
            border-radius: 50% 50% 0 0 / calc(var(--unitSize) * 1.5) calc(var(--unitSize) * 1.5) 0 0;
            background: var(--darkGold);
            z-index: 1;
        }
        
        .valve2 {
            --x: calc(var(--unitSize) * -9.5);
            h.........完整代码请登录后点击上方下载按钮下载查看

网友评论0