Interstellar Code

Elementos de formularios con HTML

Aprendemos a utilizar todos los elementos de HTML que nos ayudan a crear formularios accesibles y funcionales en HTML.

07 de junio de 2025

Tabla de contenido:

  1. 1. Elementos de formularios con HTML
  2. 2. Etiqueta <form>
  3. 3. Etiqueta <input>
  4. 4. Etiqueta <label>
  5. 5. Etiqueta <textarea>
  6. 6. Etiqueta <select>
  7. 7. Etiqueta <button>

Elementos de formularios con HTML

Los formularios son probablemente los elementos más importantes de una página web, y por ende del lenguaje HTML, mediante estos elementos podemos construir formularios para recolectar información por parte de los usuarios para darle interactividad y funcionamiento a nuestros sitios web.

Existen una gran cantidad de elementos que podemos utilizar para crear formularios, y cada uno de ellos tiene un propósito específico. A continuación, veremos los más comunes y cómo utilizarlos.


Etiqueta <form>

La etiqueta <form> es el contenedor principal de un formulario. Dentro de esta etiqueta, podemos incluir otros elementos como campos de entrada, botones y etiquetas. La estructura básica de un formulario es la siguiente:

<form action="/submit" method="POST" target="_self" autocomplete="on">
  <!-- ... -->
</form>

La etiqueta <form> tiene una serie de atributos que nos ayudan a definir el comportamiento del mismo formulario, entre los más importantes están:


Etiqueta <input>

La etiqueta <input> es uno de los elementos más utilizados en los formularios. Se utiliza para crear campos de entrada donde los usuarios pueden ingresar datos. La etiqueta <input> tiene un atributo type que define el tipo de campo de entrada que se creará. Algunos de los tipos más comunes son:

<form action="" method="post">
  <input type="text" name="nombre" id="nombre" placeholder="Nombre: " />
  <input type="password" name="password" id="password" placeholder="Contraseña: " />
  <input type="email" name="email" id="email" placeholder="E-Mail: " />
  <input type="number" name="edad" id="edad" placeholder="Edad: " />
  <input type="search" name="buscar" id="buscar" placeholder="Buscar: " />
  <input type="tel" name="phone" id="phone" placeholder="Teléfono: " />

  <input type="radio" name="answer" id="Yes" /> Yes
  <input type="radio" name="answer" id="No" /> No

  <input type="checkbox" name="language" id="Java" /> Java
  <input type="checkbox" name="language" id="Python" /> Python
  <input type="checkbox" name="language" id="C#" /> C#

  <input type="color" name="color" id="color" />

  <input type="button" value="Botón" />
  <input type="submit" value="Submit" />
  <input type="reset" value="Reset" />

  <input type="file" name="file" id="file" />

  <input type="image" src="img/logo.png" alt="Logo">

  <input type="url" name="url" id="url" placeholder="url: " />

  <input type="date" name="date" id="date" />
  <input type="time" name="time" id="time" />
  <input type="datetime-local" name="datetime" id="datetime" />
  <input type="week" name="week" id="week" />
  <input type="month" name="month" id="month" />

  <input type="range" name="range" id="range" />
</form>

Además del tipo de campo de la etiqueta <input>, también podemos utilizar otros atributos para mejorar la accesibilidad y la experiencia del usuario, algunos de los más comunes y utilizados son:


Etiqueta <label>

La etiqueta <label> se utiliza para asociar una etiqueta de texto con un campo de entrada. Esto mejora la accesibilidad y la usabilidad del formulario, ya que permite a los usuarios hacer clic en la etiqueta para enfocar el campo de entrada correspondiente. Para asociar una etiqueta <label> con un campo de entrada, se utiliza el atributo for, que debe coincidir con el id del campo de entrada.

<label for="nombre">Nombre:</label>
<input type="text" name="nombre" id="nombre" placeholder="Nombre: " />
<label for="email">E-Mail:</label>
<input type="email" name="email" id="email" placeholder="E-Mail: " />
<label for="password">Contraseña:</label>
<input type="password" name="password" id="password" placeholder="Contraseña: " />

Etiqueta <textarea>

La etiqueta <textarea> se utiliza para crear un campo de entrada de texto de varias líneas. Es útil para permitir que los usuarios ingresen texto más largo, como comentarios o descripciones. La etiqueta <textarea> no tiene un atributo type, ya que siempre crea un campo de texto de varias líneas.

<textarea name="comentarios" id="comentarios" rows="4" cols="50" placeholder="Escribe tus comentarios aquí..."></textarea>

La etiqueta <textarea> también tiene algunos atributos útiles:


Etiqueta <select>

La etiqueta <select> se utiliza para crear un menú desplegable que permite a los usuarios seleccionar una opción de una lista. Dentro de la etiqueta <select>, se utilizan las etiquetas <option> para definir las opciones disponibles.

<select name="languages" id="languages">
  <option value="JavaScript">JavaScript</option>
  <option value="Python">Python</option>
  <option value="Java">Java</option>
  <option value="C#">C#</option>
  <option value="TypeScript">TypeScript</option>
</select>

La etiqueta <select> también tiene algunos atributos útiles:


Etiqueta <button>

La etiqueta <button> se utiliza para crear botones dentro de un formulario. Los botones pueden tener diferentes tipos, como submit, reset o button. El tipo predeterminado es submit, que envía el formulario cuando se hace clic en el botón.

<button type="submit">Enviar</button>
<button type="reset">Restablecer</button>
<button type="button">Botón</button>