Follow us on Instagram for updates link

Simple Login Page with Validation Using HTML, CSS, and JavaScript

Create a Simple Login Page with Validation Using HTML, CSS, and JavaScript

Published on January 10, 2025

In this post, we'll walk you through creating a simple login page using HTML, CSS, and JavaScript. The form will have fields for the username and password, along with a login button. We’ll also add basic JavaScript validation to ensure the fields are not empty and provide feedback to the user if they enter incorrect credentials. This is a great starting point for understanding form validation in web development.



HTML Code

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Login Page</title>

    <link rel="stylesheet" href="style.css">

</head>

<body>

    <div class="login-container">

        <h2>Login</h2>

        <form id="loginForm">

            <label for="username">Username</label>

            <input type="text" id="username" name="username" placeholder="Enter your username" required>

            <label for="password">Password</label>

            <input type="password" id="password" name="password" placeholder="Enter your password" required>

            <button type="submit">Login</button>

        </form>

        <div id="responseMessage"></div>

    </div>

    <script src="script.js"></script>

</body>

</html>



  

CSS Code

body {

    font-family: Arial, sans-serif;

    background-color: #f0f0f0;

    display: flex;

    justify-content: center;

    align-items: center;

    height: 100vh;

    margin: 0;

}

.login-container {

    background: #fff;

    padding: 20px;

    border-radius: 10px;

    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);

    width: 300px;

    text-align: center;

}

h2 {

    color: #333;

}

label {

    display: block;

    margin-bottom: 5px;

    color: #555;

}

input {

    width: 100%;

    padding: 10px;

    margin-bottom: 15px;

    border: 1px solid #ccc;

    border-radius: 5px;

    font-size: 14px;

}

button {

    background: #007bff;

    color: #fff;

    padding: 10px 20px;

    border: none;

    border-radius: 5px;

    cursor: pointer;

    width: 100%;

    font-size: 16px;

}

button:hover {

    background: #0056b3;

}



  

JavaScript Code

document.getElementById("loginForm").addEventListener("submit", function (e) {

    e.preventDefault();

    const username = document.getElementById("username").value;

    const password = document.getElementById("password").value;

    // Example of hardcoded login details

    const correctUsername = "user123";

    const correctPassword = "password123";

    if (username === correctUsername && password === correctPassword) {

        document.getElementById("responseMessage").textContent = "Login successful!";

        document.getElementById("responseMessage").style.color = "green";

    } else {

        document.getElementById("responseMessage").textContent = "Incorrect username or password.";

        document.getElementById("responseMessage").style.color = "red";

    }

});



  

How It Works

1. **HTML**: The login form contains two fields: one for the username and one for the password. Both fields are required, and the form has a submit button. 2. **CSS**: The form is styled with a minimalistic design, using a centered layout with a white background and blue button to make it user-friendly. 3. **JavaScript**: The script checks whether the entered username and password match the predefined correct values. If they do, a success message appears, otherwise an error message is displayed. This simulates a basic login system, but in a real-world application, user authentication would be handled by a server.