Componente de inicio de sesión/registro
Un componente de inicio de sesión / registro receptivo para comercio electrónico con microinteracciones, combinación de colores análoga y soporte para temas oscuros, construido con Tailwind CSS.
Código HTML
<div class="min-h-screen flex items-center justify-center bg-gray-100 dark:bg-gray-900">
<div class="bg-white dark:bg-gray-800 p-8 rounded-lg shadow-lg max-w-md w-full relative overflow-hidden">
<!-- Analogous Color Scheme Elements (example: blues and greens) -->
<div class="absolute top-0 left-0 w-24 h-24 bg-blue-200 dark:bg-blue-700 rounded-full mix-blend-multiply filter blur-xl opacity-70 animate-blob"></div>
<div class="absolute top-0 right-0 w-24 h-24 bg-green-200 dark:bg-green-700 rounded-full mix-blend-multiply filter blur-xl opacity-70 animate-blob animation-delay-2000"></div>
<div class="absolute -bottom-8 left-20 w-24 h-24 bg-teal-200 dark:bg-teal-700 rounded-full mix-blend-multiply filter blur-xl opacity-70 animate-blob animation-delay-4000"></div>
<div class="relative z-10">
<div class="flex justify-center mb-6">
<h2 class="text-3xl font-bold text-gray-800 dark:text-white" id="form-title">Login</h2>
</div>
<!-- Login Form -->
<form id="login-form">
<div class="mb-4">
<label for="email" class="block text-gray-700 dark:text-gray-300 text-sm font-bold mb-2">Email</label>
<input type="email" id="email" class="shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 dark:text-gray-200 leading-tight focus:outline-none focus:shadow-outline bg-gray-50 dark:bg-gray-700 dark:border-gray-600 transition duration-300 ease-in-out transform focus:scale-105" placeholder="[email protected]">
</div>
<div class="mb-6">
<label for="password" class="block text-gray-700 dark:text-gray-300 text-sm font-bold mb-2">Password</label>
<input type="password" id="password" class="shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 dark:text-gray-200 mb-3 leading-tight focus:outline-none focus:shadow-outline bg-gray-50 dark:bg-gray-700 dark:border-gray-600 transition duration-300 ease-in-out transform focus:scale-105" placeholder="********">
</div>
<div class="flex items-center justify-between mb-6">
<input type="submit" value="Login" class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded focus:outline-none focus:shadow-outline w-full transition duration-300 ease-in-out transform hover:scale-105 active:scale-95">
</div>
<p class="text-center text-gray-600 dark:text-gray-400 text-sm">
Don't have an account? <a href="#" class="text-blue-500 hover:text-blue-800 dark:text-blue-400 dark:hover:text-blue-600 font-bold transition duration-300 ease-in-out opacity-75 hover:opacity-100" id="signup-link">Sign up</a>
</p>
</form>
<!-- Signup Form (hidden by default) -->
<form id="signup-form" class="hidden">
<div class="mb-4">
<label for="signup-name" class="block text-gray-700 dark:text-gray-300 text-sm font-bold mb-2">Name</label>
<input type="text" id="signup-name" class="shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 dark:text-gray-200 leading-tight focus:outline-none focus:shadow-outline bg-gray-50 dark:bg-gray-700 dark:border-gray-600 transition duration-300 ease-in-out transform focus:scale-105" placeholder="John Doe">
</div>
<div class="mb-4">
<label for="signup-email" class="block text-gray-700 dark:text-gray-300 text-sm font-bold mb-2">Email</label>
<input type="email" id="signup-email" class="shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 dark:text-gray-200 leading-tight focus:outline-none focus:shadow-outline bg-gray-50 dark:bg-gray-700 dark:border-gray-600 transition duration-300 ease-in-out transform focus:scale-105" placeholder="[email protected]">
</div>
<div class="mb-6">
<label for="signup-password" class="block text-gray-700 dark:text-gray-300 text-sm font-bold mb-2">Password</label>
<input type="password" id="signup-password" class="shadow appearance-none border rounded w-full py-2 px-3 text-gray-700 dark:text-gray-200 mb-3 leading-tight focus:outline-none focus:shadow-outline bg-gray-50 dark:bg-gray-700 dark:border-gray-600 transition duration-300 ease-in-out transform focus:scale-105" placeholder="********">
</div>
<div class="flex items-center justify-between mb-6">
<input type="submit" value="Sign Up" class="bg-green-500 hover:bg-green-700 text-white font-bold py-2 px-4 rounded focus:outline-none focus:shadow-outline w-full transition duration-300 ease-in-out transform hover:scale-105 active:scale-95">
</div>
<p class="text-center text-gray-600 dark:text-gray-400 text-sm">
Already have an account? <a href="#" class="text-green-500 hover:text-green-800 dark:text-green-400 dark:hover:text-green-600 font-bold transition duration-300 ease-in-out opacity-75 hover:opacity-100" id="login-link">Login</a>
</p>
</form>
</div>
</div>
</div>
<!-- Just a little bit of inline CSS for the blob animation - usually this would be in a CSS file -->
<style>
@keyframes blob {
0% {
transform: translate(0px, 0px) scale(1);
}
33% {
transform: translate(30px, -50px) scale(1.1);
}
66% {
transform: translate(-20px, 20px) scale(0.9);
}
100% {
transform: translate(0px, 0px) scale(1);
}
}
.animate-blob {
animation: blob 7s infinite;
}
.animation-delay-2000 {
animation-delay: 2s;
}
.animation-delay-4000 {
animation-delay: 4s;
}
</style>
<script>
// This script is for toggling between login and signup forms
// In a real application, this would be handled by a JavaScript framework or library
const loginForm = document.getElementById('login-form');
const signupForm = document.getElementById('signup-form');
const loginLink = document.getElementById('login-link');
const signupLink = document.getElementById('signup-link');
const formTitle = document.getElementById('form-title');
signupLink.addEventListener('click', (e) => {
e.preventDefault();
loginForm.classList.add('hidden');
signupForm.classList.remove('hidden');
formTitle.textContent = 'Sign Up';
});
loginLink.addEventListener('click', (e) => {
e.preventDefault();
signupForm.classList.add('hidden');
loginForm.classList.remove('hidden');
formTitle.textContent = 'Login';
});
</script>
Componentes relacionados
Componente de inicio de sesión/registro
Un componente complejo de inicio de sesión/registro diseñado con un estilo esqueuomórfico, que utiliza un esquema de color en escala de grises para una interfaz de panel. Incluye varios elementos interactivos y es responsivo con soporte para temas oscuros.
Componente de inicio de sesión/registro
Un componente de inicio de sesión/registro simple y receptivo con una estética de Material Design, una combinación de colores análoga y compatibilidad con el modo oscuro, creado con Tailwind CSS para una cartera.
Brutalist_Agri_Auth_Component
Un componente de inicio de sesión/registro de estilo brutalista para sitios web de agricultura/ganadería, con tonos cálidos al atardecer, alto contraste y un diseño complejo con soporte para modo oscuro.