Toggle navigation
☰
HTML
CSS
Scripting
Database
<!doctype html> <html> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Tailwind CSS Drag And Drop File Upload</title> <script src="https://cdn.jsdelivr.net/npm/@tailwindcss/browser@4.2.1"></script> </head> <body class="bg-indigo-50 flex items-center justify-center min-h-screen p-6 antialiased" x-data="{ dragging: false }"> <div class="w-full max-w-xl"> <div @dragover.prevent="dragging = true" @dragleave.prevent="dragging = false" @drop.prevent="dragging = false" :class="dragging ? 'border-indigo-600 bg-white ring-8 ring-indigo-100 scale-105 shadow-3xl' : 'border-white/40 bg-white/20'" class="relative flex flex-col items-center justify-center w-full h-80 border-4 border-dashed rounded-[4rem] backdrop-blur-3xl cursor-pointer hover:border-white transition-all duration-500 group overflow-hidden" > <!-- Kinetic Decoration --> <div x-show="dragging" class="absolute inset-0 bg-gradient-to-tr from-indigo-500/10 to-rose-500/10 animate-pulse"></div> <div class="relative z-10 flex flex-col items-center justify-center"> <svg class="w-16 h-16 mb-6 text-indigo-400 opacity-60 group-hover:scale-110 transition-transform duration-500" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2.5" d="M4 16v1a3 3 0 003 3h10a3 3 0 003-3v-1m-4-8l-4-4m0 0L8 8m4-4v12"/></svg> <h2 class="mb-4 text-xl font-black text-slate-800 tracking-tighter italic">DRAG. DROP. DEPLOY.</h2> <p class="text-[10px] font-black text-slate-400 uppercase tracking-[0.4em] mb-12">Universal Payload Bridge</p> <button class="px-8 py-3 bg-slate-900 text-white rounded-full font-black text-[10px] uppercase tracking-widest hover:bg-slate-800 shadow-xl transition active:scale-95">Select Manual Link</button> </div> <input type="file" class="absolute inset-0 w-full h-full opacity-0 cursor-pointer" /> </div> </div> <script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js"></script> </body> </html>