Introduction
This code is a simple login form built using HTML, CSS, and JavaScript. It demonstrates the basic functionality of a login system, where the user enters a username and password to access the system. If the entered credentials are correct, the login is marked as successful; otherwise, an error message is displayed. This project is useful for beginners to understand how forms, styling, and simple validation work together in a web page.
Code Explanation
- HTML Structure
- The
<!DOCTYPE html>declares the document type as HTML5. - Inside
<body>, a login container holds a form with two fields:- Username (
<input type="text">) - Password (
<input type="password">)
- Username (
- A Login button triggers the
handleLogin()function when clicked. - An error message (
<p>with iderror-message) is shown if credentials are invalid.
- The
- CSS Styling
bodyuses flexbox to center the login form both vertically and horizontally..login-containeris styled with padding, rounded corners, and a shadow to make it look like a card.- Inputs and buttons are styled with hover effects and focus highlights for better user interaction.
.erroris styled in red and hidden by default, only appearing when login fails.
- JavaScript Functionality
handleLogin()gets values from the username and password fields.- It checks if the username is
"admin"and the password is"password123". - If correct → shows a success alert.
- If incorrect → displays the error message by changing its
displaystyle.
Features of This Login Form
- User-friendly interface with a simple and clean design.
- Responsive layout using flexbox for better display on different screen sizes.
- Basic form validation to check if the entered credentials match predefined values.
- Error handling that displays a clear message when login fails.
- Interactive styling with input focus and button hover effects.
- Lightweight implementation using only HTML, CSS, and JavaScript.
- Introduces the concept of authentication, although not secure for real applications.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Simple Login Form</title> <style> body { font-family: Arial, sans-serif; display: flex; justify-content: center; align-items: center; height: 100vh; margin: 0; background-color: #f0f2f5; } .login-container { background-color: white; padding: 20px; border-radius: 8px; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); width: 300px; } .login-container h2 { text-align: center; margin-bottom: 20px; } .form-group { margin-bottom: 15px; } .form-group label { display: block; margin-bottom: 5px; } .form-group input { width: 100%; padding: 8px; border: 1px solid #ddd; border-radius: 4px; box-sizing: border-box; } .form-group input:focus { outline: none; border-color: #1877f2; } button { width: 100%; padding: 10px; background-color: #1877f2; color: white; border: none; border-radius: 4px; cursor: pointer; font-size: 16px; } button:hover { background-color: #166fe5; } .error { color: red; font-size: 14px; text-align: center; margin-top: 10px; display: none; } </style> </head> <body> <div class="login-container"> <h2>Login</h2> <div class="form-group"> <label for="username">Username</label> <input type="text" id="username" placeholder="Enter username" required> </div> <div class="form-group"> <label for="password">Password</label> <input type="password" id="password" placeholder="Enter password" required> </div> <button onclick="handleLogin()">Login</button> <p class="error" id="error-message">Invalid username or password</p> </div> <script> function handleLogin() { const username = document.getElementById('username').value; const password = document.getElementById('password').value; const errorMessage = document.getElementById('error-message'); // Simple validation (for demo purposes) if (username === "admin" && password === "password123") { alert("Login successful!"); errorMessage.style.display = 'none'; } else { errorMessage.style.display = 'block'; } } </script> </body> </html> Modern HTML Login Forms – Overlay, Card Designs & UI Styles (Related to HTML Forms)
Gradient Overlay Fullscreen Login Form:
This login form uses gradient overlays across the full screen to create a colorful and modern background. It improves visual appeal while keeping the login section clear and focused.
Read more: https://macronepal.com/blog/gradient-overlay-fullscreen-overlay-login-form/
Animated Fade-In Overlay Login Form:
This form uses smooth fade-in animations when the page loads. It enhances user experience by making the login interface feel dynamic and interactive.
Read more: https://macronepal.com/blog/animated-fade-in-overlay-fullscreen-overlay-login-form/
Light Glass Look Fullscreen Login Form:
A soft glass-style UI with light transparency and blur effects. It creates a clean, elegant login interface with a modern aesthetic.
Read more: https://macronepal.com/blog/light-glass-look-fullscreen-overlay-login-form/
Dark Blur Overlay Fullscreen Login Form:
This design uses a dark blurred background overlay, helping the login form stand out while giving a professional and modern dark UI feel.
Read more: https://macronepal.com/blog/dark-blur-overlay-fullscreen-overlay-login-form/
Floating Card Login Form (HTML, CSS, JS):
A floating card-style login form that appears elevated above the background using shadows and positioning effects for a 3D-like look.
Read more: https://macronepal.com/aws/floating-card-login-form-in-html-css-and-javascript/
Gradient Card Login Form (HTML, CSS, JS):
This login form uses gradient backgrounds inside a card layout, making the interface visually attractive and modern.
Read more: https://macronepal.com/blog/gradient-card-login-form-in-html-css-and-javascript/
Image Background Card Login Form (HTML, CSS, JS):
A card-style login form placed over an image background, combining visual storytelling with functional login design.
Read more: https://macronepal.com/blog/image-background-card-login-form-in-html-css-and-javascript/
Split Card Login Form (HTML, CSS, JS):
This design splits the login card into two sections, often with an image on one side and form fields on the other, creating a balanced layout.
Read more: https://macronepal.com/aws/split-card-login-form-in-html-css-and-javascript/
Glow Neon Card Login Form (HTML, CSS, JS):
A futuristic login form using neon glow effects around the card, giving it a cyber-style appearance suitable for modern UI themes.
Read more: https://macronepal.com/blog/glow-neon-card-login-form-in-html-css-and-javascript/
Neumorphic Card Login Form (HTML, CSS, JS):
This design uses soft shadows and highlights to create a realistic 3D “pressed” effect, known as neumorphism.
Read more: https://macronepal.com/blog/neumorphic-card-login-form-in-html-css-and-javascript/
Glassmorphic Card Login Form (HTML, CSS, JS):
A glass-like transparent card design with blur effects, widely used in modern web UI for clean and elegant interfaces.
Read more: https://macronepal.com/blog/glassmorphic-card-login-form-in-html-css-and-javascript/
Simple Card Style Login Form (HTML, CSS, JS):
A basic card-based login form with minimal design, focusing on usability and clean layout without extra effects.
Read more: https://macronepal.com/blog/simple-card-style-login-form-in-html-css-and-javascript/
Simple Login Form (HTML, CSS, JS):
A straightforward login form with essential fields like username and password, built using basic HTML, CSS, and JavaScript for easy implementation.
Read more: https://macronepal.com/blog/simple-login-form-in-html-css-and-javascript/
