field-sizing: content
Baseline 2026 (Chrome 123, Safari 26.2, Firefox 152 en junio de 2026).
Chrome 123
Edge 123
Safari 26.2
Firefox 152
Hace que inputs, textareas y selects se dimensionen según su contenido, así que un textarea crece mientras el usuario escribe y un input es tan ancho como su valor. Acaba con el snippet de JS del textarea que crece solo.
CSS
.fx-031 {
font-family: system-ui;
display: grid;
gap: 4px;
max-width: 400px
}
.fx-031 textarea {
field-sizing: content;
min-height: 2lh;
max-height: 12lh;
padding: 8px;
border: 1px solid #bbb;
border-radius: 8px;
resize: none
}
.fx-031 :is(a,button,input,select,textarea):focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
HTML
<label class="fx-031">Notes <textarea rows="2" placeholder="Type to grow"></textarea></label>Fallback: Los navegadores sin soporte conservan la altura fija de `rows` con una barra de scroll.
Prompt
Para textareas e inputs que crecen solos usa `field-sizing: content` con `min-height`/`max-height` en unidades `lh` como límites; no añadas listeners de input que definan `style.height`. Conserva `rows`/`size` como tamaño de respaldo.