Curso HTML 8.5: Textarea y comentarios del usuario
1. Introducción al elemento <textarea>
El elemento <textarea> se utiliza para recoger en un formulario bloques de texto multilínea. A diferencia de <input type='text'>, que solo admite una sola línea, <textarea> proporciona a los usuarios un área expandible donde escribir comentarios largos, mensajes, descripciones, etc.
2. Atributos fundamentales de <textarea>
A continuación un resumen de los atributos más comunes:
| Atributo | Tipo | Descripción |
|---|---|---|
| name | texto | Clave que identificará el valor enviado al servidor. |
| rows | número | Altura inicial en número de líneas. |
| cols | número | Ancho inicial en número de caracteres. |
| placeholder | texto | Texto de sugerencia cuando está vacío. |
| maxlength | número | Máximo de caracteres permitidos. |
| wrap | hard/soft | Define cómo se envuelven las líneas en el valor enviado. |
| readonly | booleano | No permite edición, solo lectura. |
| disabled | booleano | Inhabilita el control, no se envía al servidor. |
| autofocus | booleano | Coloca el foco en este campo al cargar la página. |
| required | booleano | Obliga al usuario a rellenar este campo. |
3. Ejemplo básico de <textarea>
Este fragmento muestra un área de texto para que el usuario escriba una descripción libre:
<form action='/enviar' method='post'>
<label for='descripcion'>Descripción:</label>
<textarea
id='descripcion'
name='descripcion'
rows='5'
cols='40'
placeholder='Escribe aquí tu descripción...'
maxlength='500'
required
></textarea>
<button type='submit'>Enviar</button>
</form>
Comentarios de código:
rowsycolsindican las dimensiones iniciales.placeholderda pista sobre el contenido esperado.maxlengthlimita la longitud.requiredobliga a no dejarlo vacío.
4. Sección de comentarios de usuarios
Para habilitar que los usuarios dejen sus propios comentarios en una página, se suele usar:
- Un formulario con un
<textarea>para el texto del comentario. - Botones para enviar o cancelar su comentario.
- Un listado donde ese comentario se muestre junto con metadatos (usuario, fecha).
Ejemplo de un mini-sistema de comentarios (solo HTML):
<section id='comentarios'>
<h4>Deja tu comentario</h4>
<form action='/comentar' method='post'>
<label for='usuario'>Nombre:</label>
<input type='text' id='usuario' name='usuario' required>
<label for='texto-comentario'>Comentario:</label>
<textarea
id='texto-comentario'
name='texto-comentario'
rows='4'
cols='50'
placeholder='Escribe tu comentario aquí...'
required
></textarea>
<button type='submit'>>Publicar</button>
<button type='reset'>>Limpiar</button>
</form>
<h4>Comentarios publicados</h4>
<article class='comentario'>
<header>
<strong>Ana Pérez</strong> <time datetime='2023-08-01T10:30'>1 ago, 10:30</time>
</header>
<p>¡Excelente contenido! Gracias por compartir.</p>
</article>
<!--
Cada nuevo comentario iría dentro de un <article>
con datos de autor y fecha. En una implementación real
esos elementos se generan en el servidor.
-->
</section>
En este ejemplo:
- Usamos un formulario sencillo para publicar el comentario.
- La sección de comentarios muestra cada mensaje en un
<article>. - Se ilustra también cómo usar comentarios en HTML (
<!-- texto -->).
5. Buenas prácticas y accesibilidad
- Siempre vincula
<label for='…'>con eliddel<textarea>. - Proporciona
placeholderbreve y claro. - Usa
requiredo validación personalizada para evitar envíos vacíos. - En producción, valida y escapa el contenido del comentario en el servidor para prevenir XSS.
- Incluye atributos de accesibilidad como
aria-labeloaria-describedbysi el contexto lo requiere.
6. Recapitulación
El elemento <textarea> es esencial cuando necesitas permitir a un usuario escribir textos largos. Combinado con formularios y un correcto etiquetado, facilita la recogida de “comentarios de usuario” en sitios web y aplicaciones. No olvides emplear siempre las buenas prácticas de etiquetado, validación y seguridad al procesar ese contenido.
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.