Textarea para entrada multilínea
Recopile texto multilínea con el elemento textarea
Textarea para entrada multilínea es una lección gratuita de HTML Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de HTML Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de HTML Academy incluye 4 lecciones en total.
El elemento textarea
El elemento <textarea> acepta texto introducido en varias líneas:
<label for="message">Message</label>
<textarea
id="message"
name="message"
rows="5"
cols="40"
placeholder="Enter your message here..."
></textarea>
<!-- textarea is NOT a void element -- it has a closing tag -->
<!-- Default content goes between the tags, not in a value attribute -->Atributos rows y cols
rows y cols establecen el tamaño visible inicial:
<!-- rows: height in lines (default: 2) -->
<!-- cols: width in characters (default: 20) -->
<textarea rows="6" cols="50">...</textarea>
<!-- Better: use CSS for sizing -->
<textarea style="width: 100%; height: 150px; resize: vertical;">Establecer contenido predeterminado
El texto predeterminado se coloca entre las etiquetas de apertura y cierre:
<textarea name="bio">
Hello! I am a developer who loves HTML.
</textarea>
<!-- Note: whitespace inside textarea IS rendered -->
<!-- The newline after the opening tag will appear in the textarea -->
<!-- Avoid whitespace between tags if you don't want it -->resize con CSS
Controle el redimensionamiento por parte del usuario con la propiedad CSS resize:
textarea {
resize: vertical; /* allow only vertical resize */
/* resize: horizontal -- only horizontal */
/* resize: both -- both directions (default) */
/* resize: none -- prevent resizing */
width: 100%;
min-height: 120px;
max-height: 400px;
padding: 0.5rem;
box-sizing: border-box;
}Textarea autoexpandible
Haga que un textarea crezca a medida que el usuario escribe con JavaScript:
<textarea id="auto-grow" rows="3" style="overflow: hidden;"></textarea>
<script>
const ta = document.getElementById('auto-grow');
ta.addEventListener('input', () => {
ta.style.height = 'auto';
ta.style.height = ta.scrollHeight + 'px';
});
</script>maxlength y minlength
Limite la longitud del texto en un textarea:
<label for="bio">Bio (max 500 characters)</label>
<textarea
id="bio"
name="bio"
maxlength="500"
minlength="10"
rows="4"
></textarea>
<!-- Live character count: -->
<small id="char-count">0/500</small>
<script>
document.getElementById('bio').addEventListener('input', function() {
document.getElementById('char-count').textContent =
this.value.length + '/500';
});
</script>Atributo spellcheck
El atributo spellcheck controla la corrección ortográfica:
<!-- Enable (default for textarea) -->
<textarea spellcheck="true">...</textarea>
<!-- Disable (for code editors, technical input) -->
<textarea spellcheck="false">...</textarea>Atributo wrap
El atributo wrap controla cómo se envuelve el texto al enviarlo:
<!-- wrap="soft" (default): text wraps visually but newlines not added -->
<textarea wrap="soft">...</textarea>
<!-- wrap="hard": newlines inserted at wrap points when submitted -->
<!-- Requires cols to be set -->
<textarea wrap="hard" cols="40">...</textarea>readonly y disabled
Haga que un textarea no se pueda editar:
<!-- readonly: visible, selectable, submitted -->
<textarea readonly>This is read-only text.</textarea>
<!-- disabled: cannot interact, not submitted -->
<textarea disabled>Disabled textarea.</textarea>Accesibilidad de textarea
Consideraciones de accesibilidad para textareas:
- Asocie siempre un
<label>mediantefor/id - Use
aria-describedbypara vincular el texto de ayuda o los contadores de caracteres - Anuncie los cambios en el límite de caracteres a los lectores de pantalla mediante regiones dinámicas
<label for="comment">Comment</label>
<textarea id="comment" aria-describedby="comment-hint"></textarea>
<p id="comment-hint">Maximum 200 characters.</p>Estilos de textarea
Estilos habituales para un textarea:
textarea {
width: 100%;
padding: 0.75rem;
border: 1px solid #ddd;
border-radius: 0.375rem;
font-family: inherit; /* match surrounding font */
font-size: 1rem;
line-height: 1.5;
resize: vertical;
min-height: 100px;
box-sizing: border-box;
transition: border-color 0.2s;
}
textarea:focus {
outline: none;
border-color: #0070f3;
box-shadow: 0 0 0 3px rgba(0,112,243,0.2);
}Comprobación rápida
¿Cómo se establece texto pre rellenado en un textarea?
Resumen: textarea
Aspectos esenciales de textarea:
- Entrada de texto en varias líneas con una etiqueta de cierre
- El contenido predeterminado se coloca entre las etiquetas de apertura y cierre (no en el atributo value)
rowsycolsestablecen el tamaño inicial; prefiera CSSmaxlengthyminlengthcontrolan la longitudresize: verticalen CSS para controlar el redimensionamiento- Para expandirlo automáticamente, establezca
height: scrollHeighten el evento input
Preguntas frecuentes
¿La lección «Textarea para entrada multilínea» es gratis?
Sí — el texto completo de «Textarea para entrada multilínea» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de HTML Academy, actualiza a CoddyKit PRO. El curso de HTML Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Textarea para entrada multilínea»?
Recopile texto multilínea con el elemento textarea Practicas HTML Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar HTML Academy?
No se requiere experiencia previa. HTML Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.
¿Cuánto tiempo toma la lección «Textarea para entrada multilínea»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de HTML Academy?
Sí. Cada lección de HTML Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Menús desplegables: select y option
- Textarea para entrada multilínea
- Grupos de casillas y botones de opción
- Datalist para autocompletado