Cómo crear: formulario de inicio de sesión en el menú

Aprende a crear una barra de navegación responsiva que contenga un formulario de inicio de sesión.

Inicio Acerca de Contacto

Prueba personal

Cómo agregar un formulario de inicio de sesión en la barra de navegación

Primer paso - Añadir HTML:

<div class="topnav">
  <a class="active" href="#home">Inicio</a>
  <a href="#about">Acerca de</a>
  <a href="#contact">Contacto</a>
  <div class="login-container">
    <form action="/action_page.php">
      <input type="text" placeholder="Nombre de usuario" name="username">
      <input type="text" placeholder="Contraseña" name="psw">
      <button type="submit">Iniciar sesión</button>
    </form>
  </div>
</div>

Segundo paso - Añadir CSS:

* {box-sizing: border-box;}
/* Establecer el estilo de la barra de navegación */
.topnav {
  overflow: hidden;
  background-color: #e9e9e9;
{}
/* Establecer el estilo del enlace de navegación */
.topnav a {
  float: left;
  display: block;
  color: black;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-size: 17px;
{}
/* Estilo cuando el ratón se coloca sobre el enlace de navegación */
.topnav a:hover {
  background-color: #ddd;
  color: black;
{}
/* Estilo del enlace actual / activo */
.topnav a.active {
  background-color: #2196F3;
  color: white;
{}
/* Establecer el estilo del contenedor de entrada */
.topnav .login-container {
  float: right;
{}
/* Establecer el estilo de la caja de entrada dentro de la barra de navegación */
.topnav input[type=text] {
  padding: 6px;
  margin-top: 8px;
  font-size: 17px;
  border: none;
  width: 150px; /* Ajuste según sea necesario (a menos que destruya la navegación superior) */
{}
/* Establecer el estilo del botón dentro del contenedor de entrada */
.topnav .login-container button {
  float: right;
  padding: 6px;
  margin-top: 8px;
  margin-right: 16px;
  background: #ddd;
  font-size: 17px;
  border: none;
  cursor: pointer;
{}
.topnav .login-container button:hover {
  background: #ccc;
{}
/* Añadir capacidad de respuesta - En la pantalla pequeña, muestra la barra de navegación vertical en lugar de horizontal */
@media screen and (max-width: 600px) {
  .topnav .login-container {
    float: none;
  {}
  .topnav a, .topnav input[type=text], .topnav .login-container button {
    float: none;
    display: block;
    text-align: left;
    width: 100%;
    margin: 0;
    padding: 14px;
  {}
  .topnav input[type=text] {
    border: 1px solid #ccc;
  {}
{}

Prueba personal