index.html

12.19 KB
25/12/2025 07:47
HTML
<!DOCTYPE html>
<html lang="th">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>สวัสดีปีใหม่ 2569</title>
    <link href="https://fonts.googleapis.com/css2?family=Prompt:wght@300;400;600;700&display=swap" rel="stylesheet">
    <style>
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            font-family: 'Prompt', sans-serif;
            overflow-x: hidden;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);
            min-height: 100vh;
        }

        .container {
            position: relative;
            width: 100%;
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }

        /* Animated Background Patterns */
        .bg-pattern {
            position: absolute;
            width: 100%;
            height: 100%;
            opacity: 0.1;
            z-index: 0;
        }

        .thai-pattern {
            position: absolute;
            font-size: 100px;
            color: #fff;
            animation: float 20s infinite ease-in-out;
            opacity: 0.15;
        }

        .pattern-1 { top: 10%; left: 10%; animation-delay: 0s; }
        .pattern-2 { top: 70%; right: 15%; animation-delay: 3s; }
        .pattern-3 { bottom: 15%; left: 20%; animation-delay: 6s; }
        .pattern-4 { top: 40%; right: 25%; animation-delay: 9s; }

        @keyframes float {
            0%, 100% { transform: translateY(0px) rotate(0deg); }
            50% { transform: translateY(-30px) rotate(5deg); }
        }

        /* Fireworks */
        .firework {
            position: absolute;
            width: 5px;
            height: 5px;
            border-radius: 50%;
            animation: firework 2s infinite;
        }

        @keyframes firework {
            0% {
                transform: translate(0, 0);
                opacity: 1;
            }
            100% {
                transform: translate(var(--x), var(--y));
                opacity: 0;
            }
        }

        /* Main Content */
        .content {
            position: relative;
            z-index: 10;
            text-align: center;
            padding: 40px;
            animation: fadeInUp 1.5s ease-out;
        }

        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(50px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }

        /* Glass Card Effect */
        .card {
            background: rgba(255, 255, 255, 0.15);
            backdrop-filter: blur(20px);
            border-radius: 30px;
            padding: 60px 50px;
            border: 2px solid rgba(255, 255, 255, 0.3);
            box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
            max-width: 800px;
            position: relative;
            overflow: hidden;
        }

        .card::before {
            content: '';
            position: absolute;
            top: -50%;
            left: -50%;
            width: 200%;
            height: 200%;
            background: linear-gradient(45deg, transparent, rgba(255,255,255,0.1), transparent);
            animation: shine 3s infinite;
        }

        @keyframes shine {
            0% { transform: translateX(-100%) translateY(-100%) rotate(45deg); }
            100% { transform: translateX(100%) translateY(100%) rotate(45deg); }
        }

        /* Thai Decorative Elements */
        .thai-ornament {
            font-size: 60px;
            margin-bottom: 20px;
            animation: pulse 2s infinite;
            filter: drop-shadow(0 0 20px rgba(255, 215, 0, 0.6));
        }

        @keyframes pulse {
            0%, 100% { transform: scale(1); }
            50% { transform: scale(1.1); }
        }

        h1 {
            font-size: 4.5em;
            font-weight: 700;
            background: linear-gradient(45deg, #fff, #ffd700, #fff);
            background-size: 200% 200%;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            margin-bottom: 20px;
            animation: gradientShift 3s ease infinite;
            text-shadow: 0 0 30px rgba(255, 215, 0, 0.5);
        }

        @keyframes gradientShift {
            0%, 100% { background-position: 0% 50%; }
            50% { background-position: 100% 50%; }
        }

        .year {
            font-size: 5em;
            font-weight: 700;
            color: #ffd700;
            text-shadow: 0 0 20px rgba(255, 215, 0, 0.8),
                         0 0 40px rgba(255, 215, 0, 0.5);
            margin: 20px 0;
            animation: glow 2s ease-in-out infinite;
        }

        @keyframes glow {
            0%, 100% { text-shadow: 0 0 20px rgba(255, 215, 0, 0.8), 0 0 40px rgba(255, 215, 0, 0.5); }
            50% { text-shadow: 0 0 30px rgba(255, 215, 0, 1), 0 0 60px rgba(255, 215, 0, 0.8); }
        }

        .message {
            font-size: 1.5em;
            color: #fff;
            margin: 30px 0;
            line-height: 1.8;
            font-weight: 300;
            text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
        }

        .blessing {
            font-size: 1.3em;
            color: #ffd700;
            margin: 25px 0;
            font-weight: 400;
            animation: fadeIn 2s ease-in;
        }

        @keyframes fadeIn {
            from { opacity: 0; }
            to { opacity: 1; }
        }

        /* Floating Particles */
        .particle {
            position: absolute;
            border-radius: 50%;
            pointer-events: none;
            animation: rise 15s infinite ease-in;
        }

        @keyframes rise {
            0% {
                transform: translateY(100vh) scale(0);
                opacity: 0;
            }
            10% {
                opacity: 1;
            }
            90% {
                opacity: 1;
            }
            100% {
                transform: translateY(-100vh) scale(1);
                opacity: 0;
            }
        }

        /* Button */
        .cta-button {
            display: inline-block;
            margin-top: 40px;
            padding: 18px 50px;
            font-size: 1.3em;
            font-weight: 600;
            color: #764ba2;
            background: linear-gradient(135deg, #fff, #ffd700);
            border: none;
            border-radius: 50px;
            cursor: pointer;
            transition: all 0.3s ease;
            box-shadow: 0 10px 30px rgba(255, 215, 0, 0.4);
            text-decoration: none;
            animation: bounce 2s infinite;
        }

        @keyframes bounce {
            0%, 100% { transform: translateY(0); }
            50% { transform: translateY(-10px); }
        }

        .cta-button:hover {
            transform: translateY(-5px) scale(1.05);
            box-shadow: 0 15px 40px rgba(255, 215, 0, 0.6);
        }

        /* Responsive */
        @media (max-width: 768px) {
            h1 { font-size: 2.5em; }
            .year { font-size: 3em; }
            .message { font-size: 1.2em; }
            .blessing { font-size: 1.1em; }
            .card { padding: 40px 30px; }
        }
    </style>
</head>
<body>
    <div class="container">
        <!-- Background Patterns -->
        <div class="bg-pattern">
            <div class="thai-pattern pattern-1">๛</div>
            <div class="thai-pattern pattern-2">❀</div>
            <div class="thai-pattern pattern-3">๛</div>
            <div class="thai-pattern pattern-4">✿</div>
        </div>

        <!-- Main Content -->
        <div class="content">
            <div class="card">
                <div class="thai-ornament">🪷</div>

                <h1>สวัสดีปีใหม่</h1>
                <div class="year">๒๕๖๘</div>

                <div class="message">
                    ขอให้ท่านและครอบครัว<br>
                    มีความสุข สุขภาพแข็งแรง<br>
                    และประสบความสำเร็จในทุกๆ ด้าน
                </div>

                <div class="blessing">
                    ๛ สุขสันต์วันขึ้นปีใหม่ ๛
                </div>

                <a href="#" class="cta-button" onclick="celebrate()">
                    🎊 ร่วมฉลอง 🎊
                </a>
            </div>
        </div>
    </div>

    <script>
        // Create Particles
        function createParticles() {
            const container = document.querySelector('.container');
            const colors = ['#ffd700', '#fff', '#ff69b4', '#00ff00', '#00bfff'];

            for (let i = 0; i < 30; i++) {
                const particle = document.createElement('div');
                particle.className = 'particle';
                particle.style.left = Math.random() * 100 + '%';
                particle.style.width = (Math.random() * 10 + 5) + 'px';
                particle.style.height = particle.style.width;
                particle.style.background = colors[Math.floor(Math.random() * colors.length)];
                particle.style.animationDelay = Math.random() * 15 + 's';
                particle.style.animationDuration = (Math.random() * 10 + 10) + 's';
                container.appendChild(particle);
            }
        }

        // Create Fireworks
        function createFireworks() {
            const container = document.querySelector('.container');
            const colors = ['#ff0000', '#00ff00', '#0000ff', '#ffff00', '#ff00ff', '#00ffff'];

            setInterval(() => {
                const centerX = Math.random() * window.innerWidth;
                const centerY = Math.random() * window.innerHeight;
                const color = colors[Math.floor(Math.random() * colors.length)];

                for (let i = 0; i < 12; i++) {
                    const firework = document.createElement('div');
                    firework.className = 'firework';
                    firework.style.left = centerX + 'px';
                    firework.style.top = centerY + 'px';
                    firework.style.background = color;

                    const angle = (i / 12) * Math.PI * 2;
                    const distance = 100 + Math.random() * 100;
                    firework.style.setProperty('--x', Math.cos(angle) * distance + 'px');
                    firework.style.setProperty('--y', Math.sin(angle) * distance + 'px');

                    container.appendChild(firework);

                    setTimeout(() => firework.remove(), 2000);
                }
            }, 2000);
        }

        // Celebrate Function
        function celebrate() {
            const container = document.querySelector('.container');

            for (let i = 0; i < 50; i++) {
                setTimeout(() => {
                    const confetti = document.createElement('div');
                    confetti.style.position = 'absolute';
                    confetti.style.left = Math.random() * 100 + '%';
                    confetti.style.top = '-20px';
                    confetti.style.width = '10px';
                    confetti.style.height = '10px';
                    confetti.style.background = ['#ff0000', '#00ff00', '#0000ff', '#ffff00', '#ff00ff'][Math.floor(Math.random() * 5)];
                    confetti.style.animation = 'rise 3s ease-out forwards';
                    confetti.style.transform = 'rotate(' + Math.random() * 360 + 'deg)';
                    container.appendChild(confetti);

                    setTimeout(() => confetti.remove(), 3000);
                }, i * 30);
            }
        }

        // Initialize
        createParticles();
        createFireworks();

        // Mouse follow effect
        document.addEventListener('mousemove', (e) => {
            const card = document.querySelector('.card');
            const x = (e.clientX / window.innerWidth - 0.5) * 20;
            const y = (e.clientY / window.innerHeight - 0.5) * 20;
            card.style.transform = `perspective(1000px) rotateY(${x}deg) rotateX(${-y}deg)`;
        });
    </script>
</body>
</html>