La Etiqueta FIELDSET

Se utiliza para agrupar elementos relacionados en un formulario HTML, mejorando la organización, accesibilidad y estilo.
La etiqueta <fieldset>
se utiliza para agrupar elementos relacionados en un formulario HTML, mejorando la organización, accesibilidad y estilo. Junto con <legend>
, proporciona una estructura clara para secciones de formularios como datos personales, preferencias o configuraciones.
Sintaxis básica
<form> <fieldset> <legend>Título del grupo</legend> <!-- Elementos del formulario --> <input type="text" name="nombre"> <input type="email" name="correo"> </fieldset> </form>
-
<fieldset>
: Contenedor que agrupa elementos relacionados. -
<legend>
: Etiqueta descriptiva para el grupo (debe ser el primer hijo de<fieldset>
).
Casos de uso comunes
Agrupar información personal en un formulario
<fieldset> <legend>Datos personales</legend> <label>Nombre: <input type="text" name="nombre"></label> <label>Email: <input type="email" name="email"></label> </fieldset>
Opciones de configuración
<fieldset> <legend>Preferencias</legend> <label><input type="checkbox" name="newsletter"> Recibir newsletter</label> <label><input type="checkbox" name="ofertas"> Alertas de ofertas</label> </fieldset>
Deshabilitar un grupo de campos
<fieldset disabled> <legend>Dirección (deshabilitado)</legend> <label>Calle: <input type="text" name="calle"></label> <label>Ciudad: <input type="text" name="ciudad"></label> </fieldset>
Atributos clave
Atributo | Descripción |
---|---|
disabled |
Deshabilita todos los elementos dentro del <fieldset> . |
form |
Vincula el fieldset a un formulario externo (por id ). |
name |
Nombre del grupo para referencia en JavaScript. |
Estilización con CSS
Personaliza la apariencia del grupo y su título:
fieldset { border: 2px solid #3498db; border-radius: 8px; padding: 1rem; margin: 1rem 0; } legend { color: #3498db; font-weight: bold; padding: 0 0.5rem; background: white; } /* Eliminar el borde predeterminado */ fieldset.sin-borde { border: none; padding: 0; }
Accesibilidad
-
Lectores de pantalla: Anuncian el
<legend>
como título del grupo. -
Buenas prácticas:
-
Usar
<legend>
para describir el propósito del grupo. -
Evitar anidar múltiples
<fieldset>
innecesariamente. -
Combinar con etiquetas (
<label>
) para cada campo.
-
Errores comunes
Olvidar el <legend>
<!-- Incorrecto --> <fieldset> <input type="text" name="nombre"> </fieldset>
Agrupar elementos no relacionados
<!-- Incorrecto --> <fieldset> <legend>Datos y preferencias</legend> <input type="text" name="nombre"> <input type="checkbox" name="ofertas"> </fieldset>
Usar <div>
en lugar de <fieldset>
<!-- Menos semántico --> <div class="grupo"> <h3>Datos personales</h3> <input type="text" name="nombre"> </div>
Ejemplos avanzados
Formulario de registro con múltiples secciones
<form> <fieldset> <legend>Información de cuenta</legend> <label>Usuario: <input type="text" name="usuario" required></label> <label>Contraseña: <input type="password" name="contraseña" required></label> </fieldset> <fieldset> <legend>Datos de contacto</legend> <label>Teléfono: <input type="tel" name="telefono"></label> <label>Dirección: <input type="text" name="direccion"></label> </fieldset> </form>
Fieldset con CSS Grid
<fieldset> <legend>Preferencias de envío</legend> <div class="grid"> <label>País: <select name="pais">...</select></label> <label>Ciudad: <input type="text" name="ciudad"></label> <label>Código postal: <input type="text" name="codigo-postal"></label> </div> </fieldset> <style> .grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; } </style>
Buenas prácticas
-
Agrupar solo elementos relacionados: Cada
<fieldset>
debe tener un propósito claro. -
Usar
<legend>
descriptivo: Ej: "Método de pago" en lugar de "Sección 1". -
Evitar anidaciones profundas: Mantener la estructura del formulario simple.
-
Compatibilidad: Funciona en todos los navegadores modernos, pero estilizar con cuidado para consistencia.
Conclusión:
La etiqueta <fieldset>
es esencial para:
- Organizar formularios complejos de manera clara.
- Mejorar la accesibilidad para usuarios con discapacidades.
- Facilitar el estilo y la gestión de grupos de campos.
¡Úsala para crear formularios estructurados y profesionales!