<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <title>Login Page</title>
      <style>
         /* Basics */
         html, body {
         width: 100%;
         height: 100%;
         font-family: "Helvetica Neue", Helvetica, sans-serif;
         color: #444;
         -webkit-font-smoothing: antialiased;
         background: #f0f0f0;
         }
         #container {
         position: fixed;
         width: 340px;
         height: 280px;
         top: 50%;
         left: 50%;
         margin-top: -140px;
         margin-left: -170px;
         background: #fff;
         border-radius: 3px;
         border: 1px solid #ccc;
         box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
         }
         form {
         margin: 0 auto;
         margin-top: 20px;
         }
         label {
         color: #555;
         display: inline-block;
         margin-left: 18px;
         padding-top: 10px;
         font-size: 14px;
         }
         p a {
         font-size: 11px;
         color: #aaa;
         float: right;
         margin-top: -13px;
         margin-right: 20px;
         -webkit-transition: all .4s ease;
         -moz-transition: all .4s ease;
         transition: all .4s ease;
         }
         p a:hover {
         color: #555;
         }
         input {
         font-family: "Helvetica Neue", Helvetica, sans-serif;
         font-size: 12px;
         outline: none;
         }
         input[type=text],
         input[type=password] ,input[type=time]{
         color: #777;
         padding-left: 10px;
         margin: 10px;
         margin-top: 12px;
         margin-left: 18px;
         width: 290px;
         height: 35px;
         border: 1px solid #c7d0d2;
         border-radius: 2px;
         box-shadow: inset 0 1.5px 3px rgba(190, 190, 190, .4), 0 0 0 5px #f5f7f8;
         -webkit-transition: all .4s ease;
         -moz-transition: all .4s ease;
         transition: all .4s ease;
         }
         input[type=text]:hover,
         input[type=password]:hover,input[type=time]:hover {
         border: 1px solid #b6bfc0;
         box-shadow: inset 0 1.5px 3px rgba(190, 190, 190, .7), 0 0 0 5px #f5f7f8;
         }
         input[type=text]:focus,
         input[type=password]:focus,input[type=time]:focus {
         border: 1px solid #a8c9e4;
         box-shadow: inset 0 1.5px 3px rgba(190, 190, 190, .4), 0 0 0 5px #e6f2f9;
         }
         #lower {
         background: #ecf2f5;
         width: 100%;
         height: 69px;
         margin-top: 20px;
         box-shadow: inset 0 1px 1px #fff;
         border-top: 1px solid #ccc;
         border-bottom-right-radius: 3px;
         border-bottom-left-radius: 3px;
         }
         input[type=checkbox] {
         margin-left: 20px;
         margin-top: 30px;
         }
         .check {
         margin-left: 3px;
         font-size: 11px;
         color: #444;
         text-shadow: 0 1px 0 #fff;
         }
         input[type=submit] {
         float: right;
         margin-right: 20px;
         margin-top: 20px;
         width: 80px;
         height: 30px;
         font-size: 14px;
         font-weight: bold;
         color: #fff;
         background-color: #acd6ef; /*IE fallback*/
         background-image: -webkit-gradient(linear, left top, left bottom, from(#acd6ef), to(#6ec2e8));
         background-image: -moz-linear-gradient(top left 90deg, #acd6ef 0%, #6ec2e8 100%);
         background-image: linear-gradient(top left 90deg, #acd6ef 0%, #6ec2e8 100%);
         border-radius: 30px;
         border: 1px solid #66add6;
         box-shadow: 0 1px 2px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .5);
         cursor: pointer;
         }
         input[type=submit]:hover {
         background-image: -webkit-gradient(linear, left top, left bottom, from(#b6e2ff), to(#6ec2e8));
         background-image: -moz-linear-gradient(top left 90deg, #b6e2ff 0%, #6ec2e8 100%);
         background-image: linear-gradient(top left 90deg, #b6e2ff 0%, #6ec2e8 100%);
         }
         input[type=submit]:active {
         background-image: -webkit-gradient(linear, left top, left bottom, from(#6ec2e8), to(#b6e2ff));
         background-image: -moz-linear-gradient(top left 90deg, #6ec2e8 0%, #b6e2ff 100%);
         background-image: linear-gradient(top left 90deg, #6ec2e8 0%, #b6e2ff 100%);
         }
      </style>
   </head>
   <body>
      <!-- Begin Page Content -->
      <div id="container">
         <form action="login_process.php" method="post">
            <label for="loginmsg" style="color:hsla(0,100%,50%,0.5); font-family:"Helvetica Neue",Helvetica,sans-serif;"><?php  echo @$_GET['msg'];?></label>
            <label for="username">Username:</label>
            <input type="text" id="username" name="username">
            <label for="password">Password:</label>
            <input type="password" id="password" name="password">
            <div id="lower">
               <input type="checkbox"><label class="check" for="checkbox">Keep me logged in</label>
               <input type="submit" value="Login">
            </div>
            <!--/ lower-->
         </form>
      </div>
      <!--/ container-->
      <!-- End Page Content -->
   </body>
</html>
Answer from Asraful Haque on Stack Overflow
🌐
W3Schools
w3schools.com › howto › howto_css_login_form.asp
How To Create a Login Form
Login Form Signup Form Checkout Form Contact Form Social Login Form Register Form Form with Icons Newsletter Stacked Form Responsive Form Popup Form Inline Form Clear Input Field Hide Number Arrows Copy Text to Clipboard Animated Search Search Button Fullscreen Search Input Field in Navbar Login Form in Navbar Custom Checkbox/Radio Custom Select Toggle Switch Check Checkbox Detect Caps Lock Trigger Button on Enter Password Validation Toggle Password Visibility Multiple Step Form Autocomplete Turn off autocomplete Turn off spellcheck File Upload Button Empty Input Validation
🌐
Colorlib
colorlib.com › home › inspiration › 42 free html5 & css3 login form templates for your website 2026
42 Best Free HTML5 And CSS3 Login Forms 2026 - Colorlib
January 26, 2026 - Therefore, we decided to take our own approach. We want to present 40+ login forms designed and developed by the Colorlib team. Simple, creative, and vibrant login form with a gradient background.
Discussions

html - Creating a simple login form - Stack Overflow
I am trying to create a simple HTML log-in that is placed in a box. I want to have something like this: I have tried a few things but they all seem to have been in vain. Here is my code thus far. H... More on stackoverflow.com
🌐 stackoverflow.com
Basic HTML login form - Stack Overflow
I had this figured out some years back, but i cant seem to find the tutorial again or any backup. Basically it was a simple login form that sends the user to a specified URL if the text is correct. More on stackoverflow.com
🌐 stackoverflow.com
Simple Login Form - javascript
I am trying to implement a simple login form using JavaScript and HTML. When I submit the form, I want to check the username and password against a list of valid credentials. If the credentials are... More on stackoverflow.com
🌐 stackoverflow.com
Simple Login Form in HTML | With Source Code
Hey friends, Today in this blog you’ll learn how to make a Simple Login Form in HTML CSS With Source Code . Earlier I shared a blog on how to make… More on reddit.com
🌐 r/HTML
1
5
September 30, 2021
🌐
GeeksforGeeks
geeksforgeeks.org › html › html-login-form
HTML Login Form - GeeksforGeeks
July 23, 2025 - Give the button a clear label describing its action, like "Login" or "Submit". ... Include a "Remember Me" checkbox using the <input> tag with the type attribute set to "checkbox".
Top answer
1 of 6
7
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
   <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
      <title>Login Page</title>
      <style>
         /* Basics */
         html, body {
         width: 100%;
         height: 100%;
         font-family: "Helvetica Neue", Helvetica, sans-serif;
         color: #444;
         -webkit-font-smoothing: antialiased;
         background: #f0f0f0;
         }
         #container {
         position: fixed;
         width: 340px;
         height: 280px;
         top: 50%;
         left: 50%;
         margin-top: -140px;
         margin-left: -170px;
         background: #fff;
         border-radius: 3px;
         border: 1px solid #ccc;
         box-shadow: 0 1px 2px rgba(0, 0, 0, .1);
         }
         form {
         margin: 0 auto;
         margin-top: 20px;
         }
         label {
         color: #555;
         display: inline-block;
         margin-left: 18px;
         padding-top: 10px;
         font-size: 14px;
         }
         p a {
         font-size: 11px;
         color: #aaa;
         float: right;
         margin-top: -13px;
         margin-right: 20px;
         -webkit-transition: all .4s ease;
         -moz-transition: all .4s ease;
         transition: all .4s ease;
         }
         p a:hover {
         color: #555;
         }
         input {
         font-family: "Helvetica Neue", Helvetica, sans-serif;
         font-size: 12px;
         outline: none;
         }
         input[type=text],
         input[type=password] ,input[type=time]{
         color: #777;
         padding-left: 10px;
         margin: 10px;
         margin-top: 12px;
         margin-left: 18px;
         width: 290px;
         height: 35px;
         border: 1px solid #c7d0d2;
         border-radius: 2px;
         box-shadow: inset 0 1.5px 3px rgba(190, 190, 190, .4), 0 0 0 5px #f5f7f8;
         -webkit-transition: all .4s ease;
         -moz-transition: all .4s ease;
         transition: all .4s ease;
         }
         input[type=text]:hover,
         input[type=password]:hover,input[type=time]:hover {
         border: 1px solid #b6bfc0;
         box-shadow: inset 0 1.5px 3px rgba(190, 190, 190, .7), 0 0 0 5px #f5f7f8;
         }
         input[type=text]:focus,
         input[type=password]:focus,input[type=time]:focus {
         border: 1px solid #a8c9e4;
         box-shadow: inset 0 1.5px 3px rgba(190, 190, 190, .4), 0 0 0 5px #e6f2f9;
         }
         #lower {
         background: #ecf2f5;
         width: 100%;
         height: 69px;
         margin-top: 20px;
         box-shadow: inset 0 1px 1px #fff;
         border-top: 1px solid #ccc;
         border-bottom-right-radius: 3px;
         border-bottom-left-radius: 3px;
         }
         input[type=checkbox] {
         margin-left: 20px;
         margin-top: 30px;
         }
         .check {
         margin-left: 3px;
         font-size: 11px;
         color: #444;
         text-shadow: 0 1px 0 #fff;
         }
         input[type=submit] {
         float: right;
         margin-right: 20px;
         margin-top: 20px;
         width: 80px;
         height: 30px;
         font-size: 14px;
         font-weight: bold;
         color: #fff;
         background-color: #acd6ef; /*IE fallback*/
         background-image: -webkit-gradient(linear, left top, left bottom, from(#acd6ef), to(#6ec2e8));
         background-image: -moz-linear-gradient(top left 90deg, #acd6ef 0%, #6ec2e8 100%);
         background-image: linear-gradient(top left 90deg, #acd6ef 0%, #6ec2e8 100%);
         border-radius: 30px;
         border: 1px solid #66add6;
         box-shadow: 0 1px 2px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255, 255, 255, .5);
         cursor: pointer;
         }
         input[type=submit]:hover {
         background-image: -webkit-gradient(linear, left top, left bottom, from(#b6e2ff), to(#6ec2e8));
         background-image: -moz-linear-gradient(top left 90deg, #b6e2ff 0%, #6ec2e8 100%);
         background-image: linear-gradient(top left 90deg, #b6e2ff 0%, #6ec2e8 100%);
         }
         input[type=submit]:active {
         background-image: -webkit-gradient(linear, left top, left bottom, from(#6ec2e8), to(#b6e2ff));
         background-image: -moz-linear-gradient(top left 90deg, #6ec2e8 0%, #b6e2ff 100%);
         background-image: linear-gradient(top left 90deg, #6ec2e8 0%, #b6e2ff 100%);
         }
      </style>
   </head>
   <body>
      <!-- Begin Page Content -->
      <div id="container">
         <form action="login_process.php" method="post">
            <label for="loginmsg" style="color:hsla(0,100%,50%,0.5); font-family:"Helvetica Neue",Helvetica,sans-serif;"><?php  echo @$_GET['msg'];?></label>
            <label for="username">Username:</label>
            <input type="text" id="username" name="username">
            <label for="password">Password:</label>
            <input type="password" id="password" name="password">
            <div id="lower">
               <input type="checkbox"><label class="check" for="checkbox">Keep me logged in</label>
               <input type="submit" value="Login">
            </div>
            <!--/ lower-->
         </form>
      </div>
      <!--/ container-->
      <!-- End Page Content -->
   </body>
</html>
2 of 6
4

Great Start to learning login forms. You are right, fieldset may not be the best tag.

However, I highly suggest you code it in HTML5 by using its robust form features.

HTML5 is actually easier to learn than older HTML for creating forms.

For example, read the following.

<section class="loginform cf">  
    <form name="login" action="index_submit" method="get" accept-charset="utf-8">  
        <ul>  
            <li><label for="usermail">Email</label>  
            <input type="email" name="usermail" placeholder="[email protected]" required></li>  
            <li><label for="password">Password</label>  
            <input type="password" name="password" placeholder="password" required></li>  
            <li>  
            <input type="submit" value="Login"></li>  
        </ul>  
    </form>  
</section>

Wasn't that easy for you to understand?

Try this http://www.hongkiat.com/blog/html5-loginpage/ and let me know if you have any questions.

🌐
CodePen
codepen.io › banunn › pen › AGyOKV
Simple Login Form Template
<div class="log-form"> <h2>Login to your account</h2> <form> <input type="text" title="username" placeholder="username" /> <input type="password" title="username" placeholder="password" /> <button type="submit" class="btn">Login</button> <a class="forgot" href="#">Forgot Username?</a> </form> </div><!--end log form -->
🌐
LogRocket
blog.logrocket.com › home › building a simple login form with node.js
Building a simple login form with Node.js - LogRocket Blog
June 4, 2024 - In this tutorial, we will learn how to build a simple login form to register and sign in users using Node.js.
🌐
MDBootstrap
mdbootstrap.com › standard › login form
Bootstrap Login Form - free examples, templates & tutorial
Responsive login form built with Bootstrap 5. Collection of examples for signup forms, full page login templates, login modals & many other sign in designs.
Find elsewhere
🌐
Stack Overflow
stackoverflow.com › questions › 74496402 › basic-html-login-form
Basic HTML login form - Stack Overflow
<html> <head> <title>Javascript Login Form Validation</title> <!-- Include CSS File Here --> <link rel="stylesheet" href="css/style.css"/> <!-- Include JS File Here --> <script src="js/login.js"></script> </head> <body> <div class="container"> <div class="main"> <form id="form_id" method="post" name="myform"> <label>USER:</label> <input type="text" name="username" id="username"/> <label>PASS:</label> <input type="password" name="password" id="password"/> <input type="button" value="LOGIN" id="submit" onclick="validate()"/> </form> <br> <br> username is <b>asd</b> and password is <b>123</b> </div> </div> </body> </html> <!--THE JS JAVASCRIPT PART BELOW--> <head> <script> var attempt = 4; // Variable to count number of attempts.
🌐
C# Corner
c-sharpcorner.com › article › creating-a-simple-login-page-using-html-and-css
How to Create a Simple Login Page in HTML with CSS Code
February 21, 2023 - <!DOCTYPE html> <html> <head> <title>Login Form</title> <link rel="stylesheet" type="text/css" href="css/style.css"> </head> <body> <h2>Login Page</h2><br> <div class="login"> <form id="login" method="get" action="login.php"> <label><b>User Name </b> </label> <input type="text" name="Uname" id="Uname" placeholder="Username"> <br><br> <label><b>Password </b> </label> <input type="Password" name="Pass" id="Pass" placeholder="Password"> <br><br> <input type="button" name="log" id="log" value="Log In Here"> <br><br> <input type="checkbox" id="check"> <span>Remember me</span> <br><br> Forgot <a href="#">Password</a> </form> </div> </body> </html>
🌐
CodeHim
codehim.com › home › collections › 65+ login page in html with css code sample simple to difficult
65+ Login Page in HTML with CSS Code Sample Simple to Difficult — CodeHim
January 22, 2024 - Basically, the design is really simple but it can be customized with additional CSS according to your needs. ... It’s another tabbed form with sign-in and sign-up options. This signup/login page uses Bootstrap for responsive design and jQuery for inputs validation.
🌐
Justinmind |
justinmind.com › home › 40+ inspiring website login form pages
40+ inspiring website login form pages
April 2, 2025 - TheCubeFactory login page, welcomes you back with a friendly and sleek look. On the left, the login form is kept simple, just your email and password. Need a quicker way in? There’s a “Remember for 30 days” option, and if you forgot your ...
🌐
Javatpoint
javatpoint.com › html-login-form
HTML Login Form - Javatpoint
HTML Login Form - HTML Login Form with html tutorial, tags, anchor, img, div, entity, textarea, marquee, p tag, heading tag, h1, h2, table, formatting, attribute, elements, ol, ul, Input Types, block element tag, inline element tag, html tags, phrase tag, head, body, form, lists, symbols etc.
🌐
Medium
medium.com › @kenaszogara › tutorial-create-simple-login-form-with-reactjs-31965ed3ccfa
How I design my simple login form with React | by Kenas Zogara | Medium
January 4, 2020 - Start by designing the login form. I’m using Adobe Xd and this is how it turns out… ... Syntax: create-react-app <app name> go to app directory then npm start , by now you should have React running by default on localhost:3000 · Your working directory should now looks like this: |-login-reactjs-tutorial | |-node_modules | |-public | |-favicon.ico | |-index.html | |-manifest.json | |-src | |-App.css | |-App.js | |-App.test.js | |-index.css | |-index.js | |-logo.svg | |-serviceWorker.js | |-setupTests.js | |-package.json | |-package-lock.json | |-README.md
🌐
Designmodo
designmodo.com › home › website › website examples › beautiful examples of login forms for websites and apps
Beautiful Examples of Login Forms for Websites and Apps
February 3, 2026 - Although the design is quite simple and input fields at first look like buttons because of a gradient styling; however, it is a representative example of a sleek and well-structured web form that can come in handy in numerous UIs. Some login by Paresh Khatri is a tiny web component that boasts of a vibrant color scheme and meticulous attention to details.
🌐
CodingNepal
codingnepalweb.com › home › html and css › make a simple login form in html and css only
Make A Simple Login Form in HTML and CSS only
October 16, 2024 - First, create a folder with any name you like, e.g., login-form. Then, create the necessary files inside it. Create a file called index.html to serve as the main file. Create a file called style.css for the CSS code.
🌐
FreeFrontend
freefrontend.com › css-login-forms
36 Pure CSS Login and Sign Up Form Examples
December 28, 2025 - Authentication is the first interaction. This collection of CSS Login & Sign Up Form Examples removes friction between the user and the system. Pure UI design ensures the focus remains on secure entry, not visual noise.
🌐
Reddit
reddit.com › r/html › simple login form in html | with source code
r/HTML on Reddit: Simple Login Form in HTML | With Source Code
September 30, 2021 - All you need is a few input fields, and a submit button. The input fields can be of type “text” or “password“, depending on whether you want the user’s password to be visible as they type it.
🌐
CodeSandbox
codesandbox.io › s › simple-login-form-kb2hp
Simple login form - CodeSandbox
November 7, 2020 - CodeSandbox is a cloud development platform that empowers developers to code, collaborate and ship projects of any size from any device in record time.
Published   Nov 07, 2020
Author   BhavTech