Formularios HTML: ¿Qué son y para que sirven?

Potencia la interactividad de tu página con formularios HTML. Desde simples campos de texto hasta opciones más avanzadas, los formularios son herramientas esenciales que facilitan la comunicación entre los usuarios y tu sitio web. Aprende a crear formularios básicos con ejemplos prácticos y códigos simples, y explora cómo personalizar su diseño con CSS para una experiencia más atractiva. Sumérgete en el mundo de los formularios y maximiza su utilidad en tu proyecto web.

formularios en html

1. ¿Qué son los formularios en HTML?

Los formularios HTML son secciones de una página web que permiten a los usuarios introducir datos. Estos formularios o secciones están compuestos por una serie de elementos, como campos de entrada de texto, botones de opción, casillas de verificación, botones de envío, entre otros.

Una vez que un usuario introduce estos datos, completa un formulario y hace clic en el botón de envío, los datos del formulario se envían al servidor para su procesamiento. El servidor procesa los datos y puede realizar diversas acciones, como almacenar la información en una base de datos, enviar correos electrónicos, generar respuestas personalizadas, entre otras.

2. ¿Para que sirven los formularios HTML?

Sirven para facilitar la interacción entre los usuarios y los sitios web, estos formularios son esenciales para una variedad de funciones en línea y permiten a los usuarios participar activamente en la web.

Aquí hay algunos de los usos principales de los formularios HTML en sitios web:

  1. Formularios de contacto: Permiten a los usuarios enviar consultas, comentarios o mensajes directamente al propietario del sitio web.
  2. Formularios de registro y inicio de sesión: Permiten a los usuarios crear cuentas nuevas o iniciar sesión en cuentas existentes para acceder a contenido o funcionalidades restringidas.
  3. Formularios de suscripción: Permiten a los usuarios suscribirse a boletines informativos, actualizaciones por correo electrónico u otros servicios ofrecidos por el sitio web.
  4. Formularios de comentarios: Permiten a los usuarios dejar comentarios en publicaciones de blog, artículos, productos, etc., compartiendo sus opiniones y retroalimentación.
  5. Formularios de búsqueda: Permiten a los usuarios buscar contenido específico dentro del sitio web, proporcionando consultas de búsqueda que se envían al servidor.
  6. Formularios de pedidos y compras: Permiten a los usuarios realizar pedidos de productos o servicios, ingresando detalles como cantidad, tamaño, color, etc., y proporcionando información de envío y pago.
  7. Formularios de encuestas y cuestionarios: Permiten a los propietarios del sitio recopilar datos mediante preguntas estructuradas sobre temas específicos, que pueden ser utilizados para investigación de mercado, retroalimentación de usuarios, etc.
  8. Formularios de registro de eventos: Permiten a los usuarios registrarse para eventos, conferencias, seminarios, talleres, etc., proporcionando información personal y de contacto.
  9. Formularios de comentarios de productos: Permiten a los usuarios dejar reseñas y calificaciones de productos, ayudando a otros usuarios a tomar decisiones de compra informadas.
  10. Formularios de solicitud de información: Permiten a los usuarios solicitar más detalles sobre productos, servicios o cualquier otra información proporcionada por el sitio web.

2.1. ¿Cómo crear formularios HTML en mi página web?

A continuación de tejo unos pasos que te invito a seguir y que te permitirá crear un formulario HTML básico donde un usuario podrá dejar un comentario y su correo en una página web. Esto te permitirá obtener una nación de como funciona su lógica HTML:

  1. ABRIR UN EDITOR DE TEXTO: Puedes usar cualquier editor de texto, como Notepad en Windows, TextEdit en macOS o cualquier editor de código como Visual Studio Code (recomendado), Sublime Text, Atom, etc.
  2. ESCRIBIR EL CÓDIGO HTML DEL FORMULARIO: Utiliza las etiquetas HTML adecuadas para construir tu formulario (en el punto siguiente explico la definición y funcionamiento de cada uno de estos elementos).
    • Puedes copiar y pegar el código del ejemplo que te proporciono a continuación.
  3. GUARDAR EL ARCHIVO: Guarda el archivo con una extensión «.html» para que el navegador web pueda reconocerlo como una página web HTML. Por ejemplo, puedes guardarlo como «formulario.html».
  4. ABRIR EL ARCHIVO EN UN NAVEGADOR WEB: Una vez guardado, abre el archivo HTML en un navegador web para ver tu formulario. Puedes hacerlo haciendo doble clic en el archivo o abriéndolo desde el menú del navegador.

Siguiendo estos pasos podrás crear y visualizar un formulario básico en HTML en un navegador como Google. Ten en cuenta que este es solo un ejemplo de su estructura visual (HTML).

Copia y pega el siguiente código:

<!DOCTYPE html>
<html lang="es">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Formulario de contacto</title>
</head>
<body>
    <h2>Formulario de contacto</h2>
    <form action="/procesar_formulario.php" method="post">
        <label for="nombre">Nombre:</label>
        <input type="text" id="nombre" name="nombre" required><br><br>

        <label for="correo">Correo electrónico:</label>
        <input type="email" id="correo" name="correo" required><br><br>

        <label for="mensaje">Mensaje:</label><br>
        <textarea id="mensaje" name="mensaje" rows="4" cols="50" required></textarea><br><br>

        <input type="submit" value="Enviar">
    </form>
</body>
</html>
Lenguaje del código: HTML, XML (xml)

Este código proporcionado incluye la estructura completa que necesita una página web para que solo debas copiar y pegar en tu editor de texto como Visual Studio Code, y así, al guardarlo y abrirlo en un navegador como Google puedas visualizar el formulario HTML.

De todo ese código, la parte que pertenece explícitamente al formulario HTML es el siguiente:

codigo formulario html ejemplo

3. Elementos principales de un formulario HTML.

A continuación verás una explicación de los elementos HTML mas usados en los formularios para que entiendas a como se crean y usan cada uno de ellos:

3.1. La etiqueta form:

La etiqueta <form> es el elemento fundamental para crear formularios en HTML. Define el inicio y el final de una sección (formulario HTML) de una página web donde los usuarios pueden introducir y enviar datos.

Entre sus etiquetas de inicio <form> y cierre </form>, se agrupan diferentes tipos de elementos de entrada, como campos de texto, botones de opción, casillas de verificación, botones de envío, etc., que permiten a los usuarios enviar datos al servidor para su procesamiento.

3.1.1. ¿Cómo usar la etiqueta form? Ejemplo:

  1. Primero debemos crear la etiqueta de inicios <form> y dentro de ella introducimos los atributos necesarios los cuales explicamos en el punto 3.1.2.
  2. Segundo, introducimos todos lo elementos HTML necesarios para crear nuestro formulario HTML.
  3. Y tercero, cerramos el elemento HTML que nos permite crear un formulario con la etiqueta de cierre </form>.

Ejemplo de sintaxis básica de etiqueta <form>:

formulario html etiqueta form

3.1.2. Atributos importantes de la etiqueta form:

  1. action: Especifica la URL a la que se enviarán los datos del formulario cuando se envíe. Por ejemplo: action="/ruta/al/servidor". Si se omite, los datos del formulario se enviarán al mismo lugar donde se encuentra la página actual.
  2. method: Define el método HTTP utilizado para enviar los datos del formulario. Los valores más comunes son:
    • GET: Los datos del formulario se enviarán como parte de la URL en la barra de direcciones del navegador. Es adecuado para formularios que envían datos pequeños y no confidenciales.
    • POST: Los datos se envían en el cuerpo de la petición HTTP. (Más seguro que GET para datos sensibles)
  3. enctype: Define el tipo de codificación de los datos del formulario. El valor más común y el que se aplica por defecto si no se especifica el mismo es: application/x-www-form-urlencoded.

3.2. La etiqueta input:

La etiqueta <input> es uno de los elementos más versátiles dentro de los formularios HTML. Se utiliza para crear campos de entrada de datos donde los usuarios pueden introducir información.

Algunos de estos campos mas comunes son:

  • Campo de texto (type="text"): Permite al usuario ingresar texto de una sola línea, como nombres, direcciones, comentarios, etc.
  • Campo de contraseña (type="password"): Similar al campo de texto, pero los caracteres que el usuario ingresa se ocultan, típicamente representados como asteriscos u otros caracteres de relleno.
  • Campo numérico (type="number"): Permite al usuario ingresar números, ya sea enteros o decimales.
  • Campo de correo electrónico (type="email"): Requiere que el usuario ingrese una dirección de correo electrónico válida.
  • Casilla de verificación (type="checkbox"): Permite al usuario seleccionar una o varias opciones de una lista de verificación.
  • Botón de radio (type="radio"): Permite al usuario seleccionar una opción de una lista de opciones mutuamente excluyentes.
  • Campo de fecha (type="date"): Muestra un calendario o un selector de fecha para que el usuario elija una fecha.
  • Campo de archivo (type="file"): Permite al usuario seleccionar un archivo para cargar.

Tener presente que esta etiqueta en muchos casos se usa conjuntamente con la etiqueta <label> (más adelante ampliamos), para hacer que el formulario sea más accesible y fácil de usar. En el punto 3.2.2. dejamos un ejemplo para que se entienda mejor.

Sintaxis básica:

formulario html etiqueta input ejemplo

3.2.1. Atributos y valores mas importantes de etiqueta input:

En el ejemplo superior vemos su sintaxis básica con los atributos type, id y name. A continuación, una definición de sus atributos y valores mas usados:

  1. type: Define el tipo de campo de entrada que podemos crear en un formulario como los nombrados en el punto anterior. Los valores más comunes son:
    • type="text": Campo de texto simple (valor predeterminado).
    • type="number": Utilizado para campos de entrada numérica.
    • type="date": Utilizado para campos de fecha.
    • type="password": Oculta la entrada del usuario mientras escribe (ideal para contraseñas).
    • type="checkbox": Casilla de verificación para seleccionar una o más opciones.
    • type="radio": Botón de opción para seleccionar una única opción de un grupo.
    • type="email": Campo de texto específico para direcciones de correo electrónico.
    • type="url": Campo de texto específico para URLs.
    • type="file": Permite seleccionar un archivo del dispositivo del usuario.
    • type="submit": Botón para enviar el formulario.
    • type="reset": Botón para restablecer los valores del formulario.
  2. id: Proporciona un identificador único para el elemento de entrada (para usar con CSS o JavaScript).
  3. name: Define el nombre del campo de entrada utilizado para procesar los datos del formulario en el servidor.
  4. value: Define el valor predeterminado que se muestra en el campo de entrada (también se puede hacer usando label como el ejemplo del punto siguiente).
  5. required: Indica si el campo es obligatorio (el usuario debe introducir un valor).
  6. disabled: Indica si el campo está deshabilitado (el usuario no puede introducir un valor).
  7. placeholder: Define un texto de marcador que se muestra dentro del campo de entrada como sugerencia (desaparece cuando el usuario empieza a escribir).
  8. min y max: Se utilizan en campos numéricos para definir el valor mínimo y máximo que se puede ingresar.
  9. step: Se utiliza en campos numéricos y define el tamaño del incremento o decremento que se aplicará al valor cuando se use el control de rango.
  10. autocomplete: Indica si el navegador debe completar automáticamente el valor del campo basándose en entradas anteriores del usuario.
  11. autofocus: Indica que el campo de entrada debe recibir automáticamente el foco cuando se carga la página, lo que permite al usuario comenzar a escribir de inmediato.

ACLARACIÓN: Muchos de estos atributos son usados también las demás etiquitas HTML, de todas maneras especificaremos!

3.2.2. ¿Cómo usar la etiqueta input? Ejemplo:

La función de esta etiqueta es crear un campo dentro del formulario que permita a los usuarios ingresar los datos que se requieran según lo preestablecido. A continuación dejo un ejemplo de cómo se implementa y su explicación para entender para que sirve <input>, y sus atributos y valores mas usados:

ejemplo formulario html entrada campo

En el ejemplo anterior, primero visualizamos el código para integrar un campo de entrada de texto en un formulario y segundo como se visualiza en el navegador (como Google).

Explicación del código de ejemplo:

  1. <label for="nombre">Nombre:</label>:
    • <label>: Se utiliza para proporcionar una etiqueta descriptiva para un campo de entrada de datos. En este caso, el texto «Nombre:» se mostrará junto al campo de entrada de datos, como se visualiza en el ejemplo anterior.
    • for: es el atributo que se utiliza para asociar la etiqueta con un elemento de formulario específico. En este caso, el valor «nombre» se corresponde con el atributo id del elemento de entrada <input> que se describe a continuación.

  1. <input type="text" id="nombre" name="nombre">:
    • <input> Proporciona un campo de entrada de texto para que los usuarios ingresen su nombre.
    • El atributo type="text" especifica que este campo de entrada aceptará texto.
    • El atributo id="nombre" se utiliza como identificador único para este campo de entrada. Este valor también se utiliza en la etiqueta <label> para asociar la etiqueta con este campo de entrada.
    • El atributo name="nombre" es el nombre del campo que se enviará al servidor cuando se envíe el formulario. Es a través de este nombre que se identifica el dato correspondiente en el lado del servidor.

3.3. La etiqueta textarea:

La etiqueta <textarea> en HTML se utiliza para crear un área de texto de múltiples líneas en un formulario, donde los usuarios pueden ingresar texto extenso, como comentarios en un blog, descripciones de productos o mensajes largos.

Sintaxis básica:

formulario html etiqueta textarea

3.3.1. Atributos mas importantes de etiqueta textarea:

Aquí tienes una lista de los atributos más comunes:

  1. rows: Este atributo define el número de filas (líneas) visibles en el área de texto. Controla la altura del área de texto.
  2. cols: Define el número visible de columnas de texto en el área de texto. El tamaño real del texto introducido por el usuario puede superar estos valores según sea necesario.
  3. id: Proporciona un identificador único para el elemento <textarea>.
  4. name: Define el nombre utilizado para procesar los datos del formulario en el servidor.
  5. required: Indica si el campo es obligatorio (el usuario debe introducir texto).
  6. disabled: Este atributo desactiva el área de texto.
  7. placeholder: Define un texto de marcador que se muestra dentro del área de texto como sugerencia.
  8. autofocus: Indica que el área de texto debe recibir automáticamente el foco cuando se carga la página.
  9. readonly: Hace que el área de texto sea de solo lectura.

3.3.2. ¿Cómo usar la etiqueta textarea? Ejemplo:

A continuación dejo un ejemplo de como usar este elemento HTML con una explicación para entenderlo. Al igual que con la etiqueta <input>, la podemos asociar con la etiqueta <label> (da el nombre descriptivo al lado del campo de texto).

formulario html ejemplo textarea


En el ejemplo, primero visualizamos el código para integrar un campo de entrada de texto para comentario y segundo como se visualiza en el navegador.

Explicación del ejemplo:

  1. <label for="mensaje">Mensaje:</label>:
    • <label>: se utiliza para asociar un texto descriptivo. En este caso, el texto «Mensaje:».
    • for="mensaje" es el atributo que especifica la asociación con el id="mensaje" de la etiqueta <textarea>.
    • Cuando un usuario hace clic en el rótulo, el cursor se posiciona automáticamente en el campo de entrada asociado, lo que mejora la usabilidad del formulario.

  1. <textarea id="mensaje" name="mensaje" rows="4" cols="50"></textarea>:
    • <textarea> es la etiqueta que se utiliza para crear un área de texto.
    • id="mensaje" Este identificador se utiliza para asociar el área de texto con el rótulo mediante el atributo for en la etiqueta <label>.
    • name="mensaje" se utiliza para identificar el área de texto cuando se envía el formulario al servidor. Es el nombre del parámetro que se enviará junto con su contenido.
    • rows="4" y cols="50" son los atributos que especifican el número de filas y columnas del área de texto, respectivamente. En este caso, el área de texto tendrá 4 filas y 50 columnas.
    • Todo lo que se ingrese en este campo de texto se enviará al servidor con el nombre «mensaje».

  1. <br>:
    • <br> es una etiqueta que se utiliza para agregar un salto de línea (un quiebre de línea) en el documento HTML.
    • En este caso, se utiliza después del área de texto para agregar un espacio vertical entre el área de texto y el contenido siguiente (si lo hubiera), proporcionando un formato visual más limpio y legible en el formulario.

3.3.3. ¿Usar input en vez de textarea? Consideraciones:

Sí, es posible utilizar el elemento <input> para capturar texto, pero hay algunas diferencias clave entre <input> y <textarea> que debes considerar antes de decidir cuál usar:

  1. Entrada de texto de una sola línea vs. entrada de texto multi-línea:
    • <input>: Se utiliza principalmente para capturar texto en una sola línea. Es útil para campos como nombres, direcciones de correo electrónico, números de teléfono, etc.
    • <textarea>: Se utiliza específicamente para capturar texto en múltiples líneas. Es ideal para campos donde se espera una entrada más larga, como comentarios, descripciones, mensajes largos, etc.
  2. Tamaño del campo:
    • <input>: Aunque puedes establecer la anchura del campo de entrada usando el atributo size, este control no ofrece una funcionalidad para manejar múltiples líneas de texto.
    • <textarea>: Puedes definir el tamaño exacto del área de texto tanto en términos de filas (rows) como de columnas (cols).
  3. Compatibilidad con texto predefinido:
    • <input>: No permite texto predefinido entre las etiquetas de apertura y cierre.
    • <textarea>: Puedes incluir texto predefinido entre las etiquetas de apertura y cierre, lo que se mostrará inicialmente en el área de texto.

RESUMEN: Si necesitas capturar texto en una sola línea, como nombres o direcciones de correo electrónico, entonces <input> es la opción adecuada. Sin embargo, si necesitas capturar texto en múltiples líneas, como comentarios o mensajes largos, entonces <textarea> es la elección correcta.

3.4. La etiqueta select:

La etiqueta <select> se utiliza en formularios HTML para crear un menú desplegable que permite a los usuarios seleccionar una opción de una lista predefinida. Es ideal para situaciones donde se ofrecen varias opciones relacionadas pero solo se quiere que se escoja una.

Sintaxis básica:

formulario html etiqueta select

Por ejemplo, en el código anterior, se crea un menú desplegable de ciudades con cuatro opciones: Nueva York, Los Ángeles, Chicago y Miami. Cuando se envía el formulario que contiene este menú desplegable, el valor asociado a la opción seleccionada se enviará al servidor con el nombre «ciudad».

ACLARACIÓN: Como podemos ver en ele ejemplo, y diferencia de otras etiquetas de formulario HTML, la etiqueta <select> se usa conjuntamente con la etiqueta <option> para crear un campo desplegable.

3.4.1. Elementos y atributos principales de la etiqueta select:

Como dije, este elemento se compone de otra etiquita interna <option>. A continuación amplio su definición conjuntamente con los atributos mas importantes que pueden incluir:

  1. <select>: Etiqueta de apertura que indica el comienzo de la lista desplegable. Algunos de sus atributos mas comunes:
    • size: Indica el número de opciones que serán visibles a la vez en el menú desplegable. Por ejemplo: size="5".
    • multiple: Permite que se seleccionen múltiples opciones en el menú desplegable. Puedes establecerlo como multiple para permitir la selección múltiple. Por ejemplo: multiple.
    • required: Si se especifica, el usuario debe seleccionar al menos una opción. Ayuda a validar el formulario del lado del cliente. Por ejemplo: required.
    • form: Indica el formulario al que pertenece el menú desplegable. Útil para asociar elementos de formulario cuando hay varios formularios en una página. Por ejemplo: form="formulario1".
    • name: Especifica el nombre del elemento el cual es enviado al servidor.
    • disabled: Si este atributo está presente, el menú desplegable se deshabilitará. Es útil para desactivar temporalmente el menú desplegable. Por ejemplo: disabled.
    • autofocus: Indica que el menú desplegable debería recibir automáticamente el foco cuando la página se cargue.
    • id y class: Para aplicar estilos o para seleccionar el elemento utilizando JavaScript.
  2. <option>: Dentro de la etiqueta <select>, se utilizan las etiquetas <option> para definir cada opción disponible en la lista desplegable. Algunos de sus atributos mas comunes:
    • value: Se utilizará para identificar la opción seleccionada cuando se procese el formulario en el lado del servidor.
    • selected: Indica que esta opción está seleccionada por defecto.
    • disabled: Deshabilita esta opción en el menú desplegable para que no se pueda seleccionar.
    • label: Especifica una etiqueta alternativa para la opción. Puede ser útil para proporcionar una descripción más detallada de la opción.
    • id y class: También se pueden usar en la etiqueta <option>.

3.4.2. ¿Cómo usar la etiqueta select? Ejemplo:

Para crear un campo desplegable podemos seguir los siguientes pasos:

  1. Crear la etiqueta <select>: Esta etiqueta es la que contendrá las opciones que el usuario puede seleccionar.
    • Atributos adicionales (opcional): Puedes agregar atributos adicionales a la etiqueta <select> según sea necesario.
  2. Agregar opciones: Dentro de la etiqueta <select>, añade las opciones que deseas que el usuario pueda seleccionar.
    • Atributos adicionales (opcionales): También podemos incorporar funciones adicionales con los atributos.
  3. Cerrar la etiqueta <select>: Finaliza cerrándola con </select>.

Ejemplo de etiqueta <select> y resultado:

formulario hmtl elementos select

Explicación del ejemplo:

  1. <label for="ciudad">Selecciona tu ciudad:</label>:
    • La etiqueta <label> se utiliza para asociar un texto descriptivo. En este caso, el texto «Selecciona tu ciudad:»
    • El atributo for="ciudad" especifica que este rótulo está asociado con el elemento de formulario que tiene el id="ciudad".
    • Cuando un usuario hace clic en el rótulo, el cursor se posiciona automáticamente en la lista desplegable de ciudades, lo que mejora la accesibilidad del formulario.

  1. <select id="ciudad" name="ciudad">:
    • La etiqueta <select> se utiliza para crear una lista desplegable de opciones en un formulario.
    • El atributo id="ciudad", este identificador se utiliza para asociar la etiqueta <label> con la lista desplegable.
    • El atributo name="ciudad" es el nombre del parámetro que se enviará al servidor. Es importante para identificar la selección del usuario en el lado del servidor.

  1. <option value="nueva-york">Nueva York</option>:
    • La etiqueta <option> se utiliza para definir una opción en la lista desplegable.
    • El atributo value="nueva-york" especifica el valor que se enviará al servidor si el usuario selecciona esta opción.
    • El texto «Nueva York» dentro de la etiqueta <option> es lo que se mostrará al usuario.

  1. <option value="los-angeles">Los Ángeles</option>:
    • Similar al elemento anterior, define una opción para la lista desplegable con el valor «los-angeles» y el texto «Los Ángeles».

  1. <option value="chicago">Chicago</option>:
    • Similar al elemento anterior, define una opción para la lista desplegable con el valor «chicago» y el texto «Chicago».

Estos son los elementos del código y sus funciones específicas en el contexto de un formulario HTML con una lista desplegable de ciudades.

3.5. La etiqueta button:

La etiqueta <button> en HTML se utiliza para crear un botón dentro de un formulario. Este botón puede ser utilizado para diferentes propósitos, como enviar el formulario, restablecer los valores del formulario, o ejecutar una acción personalizada utilizando JavaScript.

Aquí tienes una descripción detallada de cómo utilizar la etiqueta <button> en formularios HTML:

  1. Enviar Formulario:
    • <button type="submit">Enviar</button> El atributo type se establece en «submit» para indicar que este botón se utilizará para enviar el formulario.
  2. Restablecer Formulario:
    • <button type="reset">Restablecer</button> El atributo type se establece en «reset» para indicar que este botón se utilizará para restablecer el formulario.
  3. Botón Genérico:
    • <button type="button">Hacer Algo</button> El atributo type se establece en «button» para indicar que este botón no realizará ninguna acción predeterminada de formulario.

3.5.1. Atributos mas importantes de etiqueta button:

La etiqueta <button> en HTML puede tener varios atributos que te permiten personalizar su comportamiento y apariencia dentro de un formulario.

  1. type: Especifica el tipo de botón. Puede ser «submit», «reset» o «button».
    • type="submit": Se utiliza para enviar el formulario cuando se hace clic en el botón.
    • type="reset": Se utiliza para restablecer los valores del formulario a sus valores originales.
    • type="button": Se utiliza para ejecutar una acción personalizada cuando se hace clic en el botón. No realiza ninguna acción de formulario por defecto.
  2. name: Define el nombre del botón que se enviará al servidor junto con el valor del botón cuando se envíe el formulario.
  3. value: Útil si necesitas enviar un valor específico junto con el botón.
  4. form: Indica el formulario al que pertenece el botón.
  5. autofocus: Indica que el botón debería recibir automáticamente el foco cuando la página se cargue. Útil para mejorar la usabilidad, especialmente en formularios cortos.
  6. disabled: El botón estará deshabilitado. Útil para desactivar temporalmente el botón.

3.5.2. ¿Cómo usar la etiqueta button? Ejemplo:

La etiqueta <button> es un elemento de incio y de cierre, por lo tanto:

  1. Primero abrimos la etiqueta de inicio <button>, y dentro de ella especificamos el tipo de botón que vamos a usar con los atributos correspondiente:
    • <button type="submit">
    • <button type="reset">
    • <button type="button">
  2. Agregamos el contenido entre las etiquetas de inicio y cierre.
  3. Cerramos con las etiqueta de cierre </button>

Ejemplo de uso de etiqueta <button> y su resultado:

formulario html boton

3.5.3. ¿Podemos usar la etiqueta input en vez de button para crear botonees en formularios HTML?

Sí, es posible utilizar el elemento <input> para crear botones en HTML. Puedes hacerlo especificando el atributo type con el valor "submit", "reset", o "button", según la función que desees que tenga el botón. Por ejemplo:

  1. Botón de envío (Submit):
    • <input type="submit" value="Enviar">
  2. Botón de reinicio (Reset):
    • <input type="reset" value="Restablecer">
  3. Botón estándar (Button):
    • <input type="button" value="Haz clic aquí">

3.5.4. ¿Cómo usar la etiqueta input para crear botones? Paso a paso:

Antes que nada, ten en cuenta que la etiqueta <input> en HTML es una etiqueta de autocierre (esto significa que no tiene una etiqueta de cierre separada y se cierra dentro de sí misma). Por lo tanto el contenido del botón se incorpora con el atributo value.

Entonces, para crear el botón con esta etiqueta, basta incorporar todos los detalles dentro de la única etiqueta de autocierre <input> con los atributos apropiados. Con el siguiente ejemplo me explico mejor:

formuario html ejemplo boton

Explicación del ejemplo:

  1. <input type="submit" value="Enviar">:
    • Este elemento <input> crea un botón de envío en un formulario HTML.
    • type="submit": El atributo type especifica el tipo de entrada que se creará. En este caso, al establecerlo en «submit», se crea un botón de envío que envía los datos del formulario al servidor cuando se hace clic en él.
    • value="Enviar": El atributo value define el texto que se mostrará en el botón. En este caso, el texto es «Enviar», lo que indica al usuario que este botón es para enviar el formulario.

  1. <input type="reset" value="Restablecer">:
    • Este elemento <input> crea un botón de reinicio en un formulario HTML.
    • type="reset": El atributo type especifica el tipo de entrada que se creará. En este caso, al establecerlo en «reset», se crea un botón de reinicio que restablece los campos del formulario a sus valores predeterminados cuando se hace clic en él.
    • value="Restablecer": El atributo value define el texto que se mostrará en el botón. En este caso, el texto es «Restablecer», lo que indica al usuario que este botón es para restablecer los campos del formulario.

3.5.5. ¿Cuándo usar input o button para crear botones?

Depende de la funcionalidad que necesites:

  • Si solo necesitas botones de envío y reinicio simples, <input> es suficiente.
  • Si necesitas botones con acciones personalizadas, usa <button> y JavaScript.

3.6. La etiqueta label.

La etiqueta <label> en HTML se utiliza para asociar un texto descriptivo a un elemento de formulario, como un campo de entrada (<input>), una casilla de verificación (<checkbox>), un botón (<button>), etc.

Ejemplo y sintaxis básica:

formulario html etiqueta label

En este ejemplo, la función de la etiquita <label> es darle el nombre descriptivo «Nombre» al campo para introducir texto en el formulario.

3.6.1. Atributos importantes de la etiqueta label:

Atributos más comunes de la etiqueta <label>:

  1. for: Este atributo es el mas usado y especifica a qué elemento de formulario está asociada la etiqueta. El valor de este atributo debe ser el mismo que el valor del atributo id del elemento de formulario que se está etiquetando. Por ejemplo:
    • Como podemos ver en el ejemplo anterior, el atributo for usa el valor "nombre" para asociarse al campo de texto creado con input, debido a que input utiliza un id="nombre"
  2. form: Este atributo es opcional y especifica el formulario al que pertenece el elemento de formulario asociado.
    • Si el <label> está dentro de un formulario, pero el elemento de formulario asociado está fuera del formulario, puedes usar este atributo para vincular el <label> al formulario correcto. Esto puede ser útil en escenarios donde los elementos de formulario y sus etiquetas están organizados de manera diferente. Por ejemplo:

Ejemplo con el atributo form:

formulario html ejemplo label y form

En este caso, el atributo form en la etiqueta <label> asegura que esté asociado al formulario con id="formulario", incluso si el elemento de formulario (<input>) está fuera del alcance del formulario directo. Aunque el atributo form no es tan comúnmente utilizado como for, proporciona una forma de mantener la accesibilidad y la semántica adecuada en ciertas situaciones.

3.6.2. ¿Cómo usar la etiqueta label?:

Para usar la etiqueta <label> en HTML, sigue estos pasos:

  1. Identificar el elemento de formulario:
    • Decide qué elemento de formulario deseas asociar con la etiqueta <label>. Esto puede ser un campo de entrada (<input>), un área de texto (<textarea>), un elemento de selección (<select>), etc.
  2. Agregar la etiqueta <label>:
    • Escribe la etiqueta <label> en tu HTML. Dentro de esta etiqueta, proporciona un texto descriptivo que describa el propósito o la función del elemento de formulario asociado.
  3. Asociar la etiqueta con el elemento de formulario:
    • Utiliza el atributo for en la etiqueta <label> para asociarla con el elemento de formulario. El valor de este atributo debe ser igual al valor del atributo id del elemento de formulario que deseas etiquetar.
  4. Cerrar la etiqueta <label> correctamente:
    • Asegúrate de cerrar la etiqueta <label> correctamente para que sea válida según las especificaciones de HTML.

3.7. La etiqueta fieldset:

La etiqueta <fieldset> en HTML se utiliza para agrupar elementos relacionados dentro de un formulario y crear una sección o conjunto de campos relacionados. Junto con la etiqueta <legend>, que se usa para proporcionar un título o descripción para el conjunto de campos, <fieldset> es útil en varios casos para mejorar la accesibilidad y la usabilidad del formulario.

Sintaxis basica:

formulario html etiqueta fieldset

Es especialmente útil cuando tienes un formulario con múltiples campos que se pueden organizar en grupos lógicos.

3.7.1. Atributos principales de etiqueta fieldset y legend:

Atributos de fieldset:
  1. disabled: Deshabilita todos los elementos de control dentro del <fieldset>. Puede tener estos valores:
    • true: Deshabilita los elementos
    • false: Habilita los elementos (valor por defecto).
  2. form: Asocia el <fieldset> con un formulario específico.
  3. name: Asigna un nombre al <fieldset> para identificarlo en el código.
  4. title: Proporciona un título informativo para el <fieldset> que se muestra como un tooltip.
Atributos de legend:
  • align: Controla la alineación del texto de la leyenda dentro del <fieldset>. Sus valores son:
    • left: Alinea el texto a la izquierda (valor por defecto).
    • center: Centra el texto.
    • right: Alinea el texto a la derecha.
  • accesskey: Permite acceder al <fieldset> mediante una tecla de acceso rápido. Valores que puede tener:
    • Puede llevar un carácter único que se utiliza como atajo de teclado. Por ejemplo: accesskey="p"
  • title:  Proporciona un título informativo para la leyenda que se muestra como un tooltip.
  • class: Permite agregar clases CSS a la leyenda para personalizar su estilo.

3.7.2. ¿Cómo usar la etiqueta fieldset? Paso a paso:

  1. Define la estructura del formulario: Decide cómo quieres agrupar los elementos del formulario en secciones temáticas.
  2. Crea la etiqueta <fieldset>: Abre la etiqueta <fieldset> donde deseas iniciar una nueva sección.
  3. Agrega una leyenda: Usa la etiqueta <legend> dentro del <fieldset> para proporcionar un título descriptivo a la sección.
  4. Inserta los elementos del formulario: Coloca los elementos de control (campos de texto, casillas de verificación, botones de opción, etc.) dentro del <fieldset>.
  5. Cierra la etiqueta <fieldset>: Cierra la etiqueta </fieldset> al final de la sección.

Ejemplo:

ejemplo formulario html fieldset y legend

En este ejemplo, se utilizan dos <fieldset> para agrupar campos relacionados: uno para la información personal y otro para la dirección. Cada <fieldset> tiene una <legend> correspondiente que proporciona una descripción para el grupo de campos. Esto hace que el formulario sea más organizado y fácil de entender para los usuarios.

3.7.3. Ejemplos prácticos de casos en los que es beneficioso usar la Etiqueta fieldset:

Aquí hay algunos ejemplos prácticos de cuándo y por qué es beneficioso usar la etiqueta <fieldset>:

  1. Formularios largos o complejos con múltiples secciones o categorías de información:
    • Puedes usar <fieldset> y <legend> para agrupar campos relacionados. Por ejemplo, podrías tener un formulario de registro que incluya secciones separadas para información personal, información de contacto y preferencias de cuenta. Cada sección podría estar dentro de un <fieldset> con un título descriptivo utilizando <legend>.
  2. Formularios con grupos de opciones relacionadas:
    • Como opciones de envío en una tienda en línea (envío estándar, envío exprés, recogida en tienda), puedes usar <fieldset> para agrupar estas opciones y ayudar a los usuarios a entender las diferentes opciones disponibles.
  3. Formularios con campos opcionales:
    • Puedes usar <fieldset> para agrupar los campos opcionales y proporcionar una indicación visual de que estos campos son separados del resto del formulario. Esto puede ayudar a los usuarios a identificar fácilmente qué campos son obligatorios y cuáles son opcionales.

RESUMEN: La etiqueta <fieldset> es beneficiosa en casos donde necesitas organizar y estructurar campos relacionados dentro de un formulario, mejorar la usabilidad del formulario y hacer que sea más fácil para los usuarios entender y completar el formulario.

4. Validación de formularios HTML.

La validación de formularios es un proceso crucial para garantizar que los datos introducidos por los usuarios en un formulario web sean correctos, completos y coherentes.

4.1. Objetivo principal de la validación de formularios HTML:

  • Proteger la integridad de los datos: Evita la introducción de información errónea, incompleta o irrelevante que pueda afectar el procesamiento y análisis de la información.
  • Mejorar la experiencia del usuario: Brinda retroalimentación instantánea sobre los errores, facilitando la corrección y evitando frustraciones.
  • Reducir la carga de trabajo del servidor: Minimiza la cantidad de datos erróneos que se envían al servidor, optimizando el rendimiento y la seguridad.

4.2. Existen dos tipos principales de validación de formularios:

  1. Validación del lado del cliente (frontend):
  2. Validación del lado del servidor (backend):

4.2.1. Validación del lado del cliente (frontend):

Son validaciones que se realizan en el navegador del usuario antes de enviar el formulario al servidor. Se utiliza HTML, CSS y JavaScript para verificar la entrada del usuario en tiempo real y puede mostrar mensajes de error y sugerencias para corregir los errores.

Por ejemplo:

ATRIBUTO required:

Este atributo se agrega a un campo de entrada para indicar que el campo debe completarse antes de enviar el formulario. Si el campo está vacío cuando se intenta enviar el formulario, se mostrará un mensaje de error predeterminado y el formulario no se enviará.

formularios html validacion
ATRIBUTO pattern:

Permite especificar un patrón (expresión regular) que debe cumplir el valor ingresado en un campo de entrada. Esto es útil para validar formatos específicos, como direcciones de correo electrónico, números de teléfono, códigos postales, etc.

formularios html pattern
VALIDACÓN CON (JavaScript):

Además de la validación proporcionada por los atributos HTML, puedes realizar validación del lado del cliente utilizando JavaScript. Esto te permite realizar validaciones más complejas o personalizadas, como verificar la longitud de una contraseña, comparar valores de campos, etc. En el punto 6.4. dejo un ejemplo de validación con JavaScript.

formulario html validacion javascript ejemplo
4.2.2. Validación del lado del servidor (backend):

Esta validación se realiza en el servidor después de que se envía el formulario. Utiliza código del lado del servidor (PHP, Python, etc.) para verificar la entrada del usuario. Puede acceder a bases de datos y otros recursos para realizar validaciones más complejas. Ejemplos de su accionar:

  • Comprobar que un usuario exista en una base de datos.
  • Validar que un código de promoción sea válido.
  • Asegurar que el tamaño de un archivo subido no supere un límite.

4.3. Herramientas para la validación de formularios:

Existen diversas bibliotecas y frameworks de JavaScript que facilitan la implementación de la validación del lado del cliente, como jQuery Validate, FormValidation.js y BootstrapValidator.

Los lenguajes de scripting del lado del servidor también ofrecen herramientas y funciones para la validación de formularios.

4.4. Ejemplo práctico de cómo validar formularos HTML:

Te invito nuevamente a realizar el siguiente ejercicio básico para entender la lógica de esta validación, en este ejemplo, usaremos unos códigos en JavaScript para este proceso, de todas manera, no te preocupes por entender las líneas de JavaScript, solamente sigue estos pasos:

  1. ABRIR UN EDITOR DE TEXTO: Puedes usar cualquier editor de texto, como Notepad en Windows, TextEdit en macOS o cualquier editor de código como Visual Studio Code (recomendado), Sublime Text, Atom, etc.
  2. COPIA Y PEGA LOS SIGUIENTES CÓDIGOS EN TU EDITOR DE TEXTO para programar, como Visual Studio Code.
  3. GUARDAR EL ARCHIVO: Guarda el archivo con una extensión «.html» para que el navegador web pueda reconocerlo como una página web HTML. Por ejemplo, puedes guardarlo como «formulario.html».
  4. ABRIR EL ARCHIVO EN UN NAVEGADOR WEB: Una vez guardado, abre el archivo HTML en un navegador web para ver tu formulario. Puedes hacerlo haciendo doble clic en el archivo o abriéndolo desde el menú del navegador.
    • Una vez visualizado el formulario en el navegador como Google, has clic en enviar sin introducir ningún valor en los campos y veras el mensaje de error.

Código a copiar y pegar:

<form id="miFormulario">
    <input type="text" id="nombre" name="nombre">
    <span id="mensajeErrorNombre" style="display: none;">Por favor ingresa tu nombre.</span><br><br>
    
    <input type="email" id="correo" name="correo">
    <span id="mensajeErrorCorreo" style="display: none;">Por favor ingresa un correo electrónico válido.</span><br><br>
    
    <button type="submit">Enviar</button>
</form>

<script>
    document.getElementById('miFormulario').addEventListener('submit', function(event) {
        if (!validarFormulario()) {
            event.preventDefault(); // Impedir el envío del formulario si la validación falla
        }
    });

    function validarFormulario() {
        let nombre = document.getElementById('nombre').value;
        let correo = document.getElementById('correo').value;
        let nombreValido = nombre.trim() !== '';
        let correoValido = /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(correo);

        document.getElementById('mensajeErrorNombre').style.display = nombreValido ? 'none' : 'inline';
        document.getElementById('mensajeErrorCorreo').style.display = correoValido ? 'none' : 'inline';

        return nombreValido && correoValido;
    }
</script>
Lenguaje del código: HTML, XML (xml)

En este ejemplo, hemos creado un formulario con campos de nombre y correo electrónico. Utilizamos JavaScript para agregar un controlador de eventos al evento de envío del formulario. La función validarFormulario() verifica si los campos de nombre y correo electrónico son válidos y muestra mensajes de error si no lo son. Si la validación falla, se impide que el formulario se envíe al servidor utilizando event.preventDefault().

RESUMEN: La validación de formularios es una parte esencial de cualquier formulario web que pretenda obtener datos precisos y confiables de los usuarios. La combinación de la validación del lado del cliente y del lado del servidor proporciona una capa de seguridad y protección a la vez que mejora la experiencia del usuario.

5. Envió de datos del formularios HTML al servidor.

Cuando un usuario completa un formulario en una página web y hace clic en un botón de envío, esta información debe enviarse al servidor para que pueda ser procesada de alguna manera, como almacenarla en una base de datos, enviarla por correo electrónico, procesarla en el servidor, etc.

¿Y como configurar el formulario HTML para que los datos completados se envíen al servidor?

Para configurar un formulario HTML para que los datos completados se envíen al servidor, necesitas utilizar la etiqueta <form> y definir los atributos adecuados (como ya explicación en el punto 3.1.2.). Aquí tienes los pasos para hacerlo:

  1. Configurar el atributo action en la etiqueta <form>: El atributo action se utiliza para especificar la URL del servidor al que se enviarán los datos del formulario cuando se haga clic en el botón de enviar.
  2. Configurar el atributo method en la etiqueta <form>: El atributo method se utiliza para especificar el método de envío de datos. Los métodos comunes son GET y POST.
    • GET: En este método, los datos del formulario se adjuntan a la URL de la solicitud HTTP como parámetros de consulta. Esto significa que los datos son visibles en la barra de direcciones del navegador y tienen limitaciones en la cantidad de datos que pueden ser enviados. (Es adecuado para formularios que envían datos pequeños y no confidenciales).
    • POST: En este método, los datos del formulario se envían en el cuerpo de la solicitud HTTP. Esto significa que los datos no son visibles en la URL y pueden incluir más información que en el método GET. Además, el método POST se utiliza típicamente para enviar datos sensibles o grandes cantidades de datos.

Ejemplo:

envio formulario html

En este ejemplo, el formulario se enviará al servidor en la ruta /submit-form cuando se haga clic en el botón de envío. Y utiliza el método "post" y los datos del formulario se envían en el cuerpo de la solicitud HTTP.

¿Por qué es importante configurar correctamente los datos de envíos en un formulario HTML?.

Configurar correctamente los datos de envío en un formulario HTML es esencial para garantizar que la información del usuario se transmita de manera segura y eficiente al servidor, y que se procese y utilice de manera adecuada. Esto contribuye a una experiencia de usuario positiva y a la seguridad de los datos en tu aplicación web.

¿Cómo procesar los datos del formulario una vez enviados al servidor?

Una vez que el usuario hace clic en el botón de enviar y los datos del formulario se envían al servidor, debemos configurar este proceso, lo cual implica recibir los datos enviados por el cliente, validarlos nuevamente (ya que la validación del lado del cliente puede ser eludida), y luego realizar acciones basadas en esos datos, como guardarlos en una base de datos, enviar correos electrónicos, etc.

Aquí te doy una ampliación sobre cómo realizar esto utilizando algunas tecnologías comunes del lado del servidor:

  1. PHP:
    • PHP es uno de los lenguajes de programación del lado del servidor más populares y ampliamente utilizados para procesar formularios HTML.
    • Para procesar datos de formularios en PHP, primero necesitas configurar un script PHP que esté asociado con el atributo action del formulario HTML.
    • Dentro de este script PHP, puedes acceder a los datos del formulario a través de las variables superglobales como $_POST o $_GET, dependiendo del método de envío del formulario (POST o GET).
    • Luego, puedes realizar la validación de los datos, procesarlos según tus necesidades y tomar medidas adicionales, como guardarlos en una base de datos o enviar correos electrónicos.
  2. Node.js:
    • Node.js es un entorno de ejecución de JavaScript del lado del servidor que es muy popular para aplicaciones web en tiempo real y API.
    • Para procesar datos de formularios en Node.js, necesitas configurar un servidor Node.js y manejar las solicitudes HTTP entrantes.
    • Puedes usar frameworks web como Express.js para simplificar el manejo de rutas y solicitudes HTTP.
    • Al igual que en PHP, puedes acceder a los datos del formulario a través del objeto request y realizar la validación y el procesamiento necesario.
    • Node.js también proporciona una amplia gama de módulos para interactuar con bases de datos, enviar correos electrónicos y realizar otras acciones.
  3. Python:
    • Python es un lenguaje de programación versátil que es muy popular tanto para el desarrollo web como para otros propósitos.
    • Para procesar datos de formularios en Python, puedes usar frameworks web como Flask o Django.
    • Estos frameworks proporcionan herramientas y funcionalidades para manejar solicitudes HTTP, incluido el procesamiento de datos de formularios.
    • Al igual que en PHP y Node.js, puedes acceder a los datos del formulario a través de objetos de solicitud HTTP y realizar la validación y el procesamiento necesario.

RESUMEN: Para procesar datos del formulario en el lado del servidor, necesitas un entorno de ejecución del lado del servidor como PHP, Node.js o Python, junto con un script o aplicación que maneje las solicitudes entrantes, acceda a los datos del formulario, los valide y realice las acciones necesarias basadas en ellos. Cada tecnología tiene sus propias peculiaridades y enfoques, pero el proceso básico es similar.

¿Por qué es importante conocer cómo procesar los datos del formulario en el lado del servidor utilizando tecnologías como PHP, Node.js, Python, etc?

Conocer cómo procesar los datos del formulario en el lado del servidor es fundamental para garantizar la seguridad, la integridad de los datos y la compatibilidad de una aplicación web. Además, proporciona flexibilidad y escalabilidad para implementar funcionalidades avanzadas y adaptarse a las necesidades cambiantes de los usuarios y el negocio.

6. Seguridad en formularios HTML:

La seguridad en los formularios web es crucial para proteger la información confidencial de los usuarios y evitar ataques maliciosos.

6.1. Consejos para mejorar la seguridad de tus formularios:

  1. Protección contra ataques XSS:
  2. Protección contra CSRF:
  3. Protección contra ataques de fuerza bruta:
  4. Protección contra el envío de spam:
  5. Almacenamiento seguro de datos:

6.1.1. Protección contra ataques XSS:

Los ataques XSS (Cross-Site Scripting) inyectan código JavaScript malicioso en un formulario que luego se ejecuta en el navegador del usuario. Para protegerse contra estos ataques:

  • Validar la entrada del usuario: Asegurarse de que solo se envíen al servidor datos válidos.
  • Escapar la salida: Codificar cualquier caracter especial en la salida HTML para evitar que se interprete como código.
  • Utilizar un marco de trabajo de seguridad web: Implementar un marco de trabajo como OWASP ESAPI para protegerse contra una amplia gama de vulnerabilidades.

6.1.2. Protección contra CSRF:

Los ataques CSRF (Cross-Site Request Forgery) engañan al usuario para que realice una acción no deseada en un formulario. Para protegerse contra estos ataques:

  • Utilizar tokens de CSRF: Generar un token único para cada formulario y validarlo en el servidor.
  • Utilizar HTTPS: Asegurar la comunicación entre el cliente y el servidor para evitar la interceptación de datos.
  • Establecer una política de «SameSite» para las cookies: Limitar el alcance de las cookies de sesión para evitar que se utilicen en ataques CSRF.

6.1.3. Protección contra ataques de fuerza bruta:

Los ataques de fuerza bruta intentan adivinar la contraseña de un usuario mediante pruebas repetidas. Para protegerse contra estos ataques:

  • Utilizar contraseñas seguras: Imponer requisitos de longitud y complejidad para las contraseñas.
  • Utilizar un límite de intentos de inicio de sesión: Limitar el número de intentos de inicio de sesión fallidos antes de bloquear la cuenta.
  • Utilizar CAPTCHAs: Implementar un CAPTCHA para dificultar el uso de bots para automatizar los ataques de fuerza bruta.

6.1.4. Protección contra el envío de spam:

Los formularios web pueden ser utilizados para enviar spam. Para protegerse contra el spam:

  • Utilizar un honeypot: Agregar un campo de formulario oculto que solo los bots pueden ver y completar.
  • Utilizar reCAPTCHA: Implementar reCAPTCHA para diferenciar entre usuarios humanos y bots.
  • Utilizar un filtro de spam: Implementar un filtro de spam para identificar y eliminar mensajes no deseados.

6.1.5. Almacenamiento seguro de datos:

Los datos del formulario deben almacenarse de forma segura para evitar el acceso no autorizado. Para ello:

  • Utilizar una base de datos segura: Almacenar los datos del formulario en una base de datos con contraseña y cifrado.
  • Utilizar HTTPS: Asegurar la comunicación entre el cliente y el servidor para evitar la interceptación de datos.
  • Limitar el acceso a los datos: Permitir solo el acceso necesario a los datos del formulario.

7. ¿Cómo crear formularios HTML en WordPress?

En WordPress se pueden crear formularios de manera muy sencilla usando plugin y haciendo unos pocos clics, de todas maneras en este punto te diremos, además de los plugin mas usados para este fin, como lo puedes hacer manualmente:

7.1. ¿Cómo crear formularios web sin plugin?

Nos enfocaremos en los pasos para crear formularios HTML usando el constructor Gutenberg, que es el que nosotros recomendamos para construir tus páginas web. Aquí te muestro cómo puedes hacerlo paso a paso:

  1. Inicia sesión en tu panel de administración de WordPress: Ingresa a tu sitio web de WordPress e inicia sesión con tus credenciales de administrador.
  2. Crea una nueva entrada o página: Dirígete al área donde deseas agregar el formulario. Puedes hacerlo creando una nueva entrada o página desde el menú «Entradas» o «Páginas» en el panel de administración.
  3. Abre el editor de bloques Gutenberg: Una vez que estés en la página o entrada deseada, haz clic en el botón «Editar» para abrir el editor de bloques Gutenberg.
  4. Agrega un bloque de HTML personalizado: En el editor de bloques Gutenberg, busca y selecciona el bloque de «HTML personalizado». Este bloque te permitirá insertar directamente tu código HTML para el formulario.
  5. Inserta el código HTML del formulario: Dentro del bloque de HTML personalizado, pega el código HTML de tu formulario. Puedes escribirlo manualmente o copiarlo desde tu editor de código favorito.
  6. Guarda los cambios: Una vez que hayas insertado el código HTML del formulario, asegúrate de guardar los cambios en tu entrada o página.
  7. Previsualiza el formulario: Antes de publicar el contenido, siempre es una buena idea previsualizar cómo se verá el formulario en tu sitio web. Puedes hacer clic en el botón «Previsualizar» para ver cómo se verá el formulario para los visitantes.
  8. Publica la entrada o página: Si estás satisfecho con cómo se ve el formulario en la vista previa, puedes publicar la entrada o página para que esté disponible en tu sitio web.

¡Eso es todo! Ahora has creado un formulario HTML en tu sitio web de WordPress. Recuerda que también puedes personalizar y estilizar el formulario utilizando CSS si es necesario. Si deseas opciones más avanzadas o funcionalidades adicionales en tus formularios, también puedes considerar el uso de plugins de formularios de terceros disponibles en el repositorio de WordPress.

7.2. ¿Cuáles son los plugin mas usados para crear formularios HTML?

En WordPress, hay una variedad de plugins disponibles para crear formularios, cada uno con sus propias características y funcionalidades. Aquí te muestro algunos de los mejores plugins para crear formularios en WordPress:

  1. WPForms: Es uno de los plugins de formularios más populares y fáciles de usar para WordPress. Ofrece una interfaz de arrastrar y soltar que te permite crear formularios personalizados de manera rápida y sencilla. Además, tiene muchas funciones útiles como notificaciones por correo electrónico, integración con servicios de marketing por correo electrónico, y más.
  2. Gravity Forms: Otro plugin de formularios altamente valorado que ofrece una amplia gama de características y funcionalidades avanzadas. Con Gravity Forms, puedes crear formularios complejos con lógica condicional, campos condicionales, integraciones de terceros, y mucho más.
  3. Contact Form 7: Es un plugin de formularios gratuito y muy popular que ofrece una solución simple para crear formularios de contacto en WordPress. Aunque puede no ser tan avanzado como algunos otros, este plugin gratuito es fácil de usar y se puede personalizar utilizando HTML y CSS.
  4. Ninja Forms: Otro plugin de formularios con una interfaz de arrastrar y soltar que facilita la creación de formularios personalizados en WordPress. Ofrece una amplia variedad de campos de formulario, integraciones con servicios populares, y herramientas de análisis para rastrear el rendimiento de tus formularios.
  5. Formidable Forms: Un plugin de formularios altamente flexible y potente que te permite crear formularios complejos con facilidad. Ofrece características como la creación de vistas personalizadas, cálculos y lógica condicional avanzada, y opciones de integración extendidas.
  6. Caldera Forms: Es un plugin de formularios gratuito y versátil que te permite crear formularios altamente personalizados con facilidad. Ofrece una variedad de campos de formulario, lógica condicional, integraciones de terceros, y más.

Cada uno tiene sus propias fortalezas y características únicas, por lo que te recomendaría explorarlos y elegir el que mejor se adapte a tus necesidades y requisitos específicos.

8. ¿Cómo personalizar estilos CSS en formularios HTML?

Para personalizar y estilizar un formulario HTML en WordPress utilizando CSS, puedes seguir estos pasos:

  1. Identifica el formulario HTML: Primero, necesitas identificar el formulario HTML que deseas personalizar. Puedes encontrar el código HTML del formulario en el editor de WordPress, ya sea en una entrada o página donde lo hayas insertado.
    • Sin has usado un plugin: Examina el código HTML del formulario creado por el plugin para identificar los elementos específicos que deseas personalizar. Puedes inspeccionar el código HTML utilizando las herramientas de desarrollo del navegador.
  2. Agrega clases o identificadores: Si el formulario no tiene clases o identificadores CSS definidos, puedes agregarlos directamente al código HTML del formulario. Por ejemplo, podrías agregar una clase al elemento <form> para identificarlo fácilmente.
    • Si has usado un plugin: Algunos plugin de formularios permiten agregar clases o identificadores personalizados a los elementos del formulario. Esto puede facilitar la personalización mediante CSS.
  3. Crea o modifica tu archivo de estilo CSS: En WordPress, puedes agregar estilos personalizados utilizando el Personalizador de WordPress o un plugin de CSS personalizado. Sin embargo, para un control más granular y avanzado, es recomendable utilizar un tema hijo y agregar tus estilos personalizados en un archivo de estilo CSS específico.
    • (desde aquí los pasos siguientes son iguales con y sin plugin)
  4. Abre el archivo de estilo CSS: Si estás utilizando un tema hijo, asegúrate de activarlo. Luego, abre el archivo de estilo CSS de tu tema hijo. Si no tienes uno, puedes crear uno nuevo. El nombre del archivo suele ser style.css y se encuentra en la carpeta del tema hijo.
  5. Escribe tus estilos CSS personalizados: Una vez que tengas abierto el archivo de estilo CSS, puedes comenzar a escribir tus estilos personalizados para el formulario. Puedes seleccionar el formulario utilizando las clases o identificadores que agregaste en el paso 2 y aplicar estilos como desees.
  6. Guarda y sube el archivo de estilo CSS: Una vez que hayas terminado de escribir tus estilos personalizados, guarda el archivo de estilo CSS y súbelo a la carpeta del tema hijo de tu sitio web de WordPress, si es necesario.
  7. Refresca tu sitio web: Después de subir el archivo de estilo CSS, refresca tu sitio web para ver los cambios aplicados a tu formulario.

En general, el proceso de personalización y estilización utilizando CSS es similar, independientemente de si el formulario fue creado con un plugin o directamente en el editor de bloques Gutenberg. Sin embargo, la personalización específica puede variar dependiendo de las clases, identificadores y estructura HTML utilizados por el plugin en particular.

PREGUNTAS FRECUENTES Y RESUMEN

Para crear un formulario HTML, utiliza la etiqueta <form>. Dentro de esta, añade elementos como <input>, <textarea> y <button> para los campos y botones. Ejemplo: <form><input type="text" name="nombre"></form>.

Los campos de formulario incluyen text, password, email, number, date, checkbox, radio, file, entre otros. Cada uno tiene un propósito específico para capturar diferentes tipos de datos del usuario.

Para validar datos de un formulario, usa atributos HTML como required, pattern, min, max, y también JavaScript para validaciones más complejas. Ejemplo: <input type="email" required pattern=".+@.+\.com">.

Para enviar datos, define los atributos action y method en la etiqueta <form>. action indica la URL del servidor y method puede ser GET o POST. Ejemplo: <form action="servidor.php" method="post">.

Personaliza el estilo usando CSS. Aplica estilos a las etiquetas <form>, <input>, <button>, etc. Ejemplo: input { border: 1px solid #ccc; padding: 10px; } para bordes y relleno de campos.

Para formularios accesibles, usa etiquetas <label> para cada campo, atributos aria para accesibilidad y asegúrate de que el formulario sea navegable con teclado. Ejemplo: <label for="nombre">Nombre:</label> <input id="nombre" type="text">.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *