js+css实现ai生成的音乐曲子调子试听下载wav、midi文件代码

代码语言:html

所属分类:多媒体

代码描述:js+css实现ai生成的音乐曲子调子试听下载wav、midi文件代码,这是ai生成的曲子。

代码标签: js css ai 生成 音乐 曲子 调子 试听 下载 wav midi 文件 代码

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

<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>🎵 欢快节奏 - 在线音乐播放器</title>
    <style>
        :root {
            --bg: #1a1a2e;
            --card-bg: #16213e;
            --primary: #e94560;
            --secondary: #0f3460;
            --accent: #f5c518;
            --text: #e0e0e0;
            --text-light: #b0b0b0;
            --gradient-1: #ff6b6b;
            --gradient-2: #feca57;
            --gradient-3: #48dbfb;
            --gradient-4: #ff9ff3;
            --success: #2ed573;
            --warning: #ffa502;
            --btn-hover: #c0392b;
        }

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Segoe UI', 'PingFang SC', 'Microsoft YaHei', sans-serif;
            background: var(--bg);
            background-image:
                radial-gradient(ellipse at 20% 20%, rgba(233, 68, 96, 0.15) 0%, transparent 50%),
                radial-gradient(ellipse at 80% 80%, rgba(72, 219, 251, 0.12) 0%, transparent 50%),
                radial-gradient(ellipse at 50% 50%, rgba(254, 202, 87, 0.08) 0%, transparent 60%);
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 20px;
            user-select: none;
            -webkit-tap-highlight-color: transparent;
        }

        .container {
            background: var(--card-bg);
            border-radius: 28px;
            padding: 36px 30px 30px;
            width: 100%;
            max-width: 520px;
            box-shadow:
                0 25px 60px rgba(0, 0, 0, 0.5),
                0 0 0 1px rgba(255, 255, 255, 0.06),
                inset 0 1px 0 rgba(255, 255, 255, 0.03);
            position: relative;
            overflow: hidden;
        }

        .container::before {
            content: '';
            position: absolute;
            top: -80px;
            right: -80px;
            width: 200px;
            height: 200px;
            background: radial-gradient(circle, rgba(233, 68, 96, 0.25) 0%, transparent 70%);
            border-radius: 50%;
            pointer-events: none;
        }

        .container::after {
            content: '';
            position: absolute;
            bottom: -60px;
            left: -60px;
            width: 160px;
            height: 160px;
            background: radial-gradient(circle, rgba(72, 219, 251, 0.2) 0%, transparent 70%);
            border-radius: 50%;
            pointer-events: none;
        }

        .header {
            text-align: center;
            margin-bottom: 28px;
            position: relative;
            z-index: 1;
        }

        .header .icon-row {
            font-size: 48px;
            margin-bottom: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            animation: iconBounce 2s ease-in-out infinite;
        }

        @keyframes iconBounce {
            0%,
            100% {
                transform: translateY(0);
            }
            30% {
                transform: translateY(-12px);
            }
            60% {
                transform: translateY(-4px);
            }
        }

        .header h1 {
            font-size: 28px;
            font-weight: 700;
            background: linear-gradient(135deg, var(--gradient-2), var(--gradient-1), var(--gradient-4));
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            color: transparent;
            letter-spacing: 1px;
        }

        .header .subtitle {
            font-size: 13px;
            color: var(--text-light);
            margin-top: 4px;
            letter-spacing: 0.5px;
        }

        .music-info-card {
            background: rgba(255, 255, 255, 0.03);
            border-radius: 18px;
            padding: 16px 20px;
            margin-bottom: 20px;
            position: relative;
            z-index: 1;
            border: 1px solid rgba(255, 255, 255, 0.06);
            display: flex;
            align-items: center;
            gap: 14px;
        }

        .music-info-card .note-icon {
            font-size: 36px;
            flex-shrink: 0;
            animation: noteFloat 3s ease-in-out infinite;
        }

        @keyframes noteFloat {
            0%,
            100% {
                transform: translateY(0) rotate(0deg);
            }
            25% {
                transform: translateY(-6px) rotate(5deg);
            }
            75% {
                transform: translateY(4px) rotate(-3deg);
            }
        }

        .music-info-card .info-text {
            flex: 1;
            min-width: 0;
        }
        .music-info-card .info-text .title {
            font-size: 15px;
            font-weight: 600;
            color: #fff;
            margin-bottom: 3px;
        }
        .music-info-card .info-text .detail {
            font-size: 12px;
            color: var(--text-light);
            display: flex;
            flex-wrap: wrap;
            gap: 8px;
        }
        .music-info-card .info-text .detail span {
            background: rgba(255, 255, 255, 0.06);
            padding: 3px 10px;
            border-radius: 12px;
            font-size: 11px;
            white-space: nowrap;
        }

        .progress-section {
            position: relative;
            z-index: 1;
            margin-bottom: 20px;
        }

        .progress-bar-outer {
            background: rgba(255, 255, 255, 0.08);
            border-radius: 10px;
            height: 8px;
            overflow: hidden;
            cursor: pointer;
            position: relative;
        }

        .progress-bar-inner {
            height: 100%;
            border-radius: 10px;
            background: linear-gradient(90deg, var(--gradient-3), var(--gradient-2), var(--gradient-1));
            background-size: 200% 100%;
            animation: shimmer 2s linear infinite;
            width: 0%;
    .........完整代码请登录后点击上方下载按钮下载查看

网友评论0