Ce face field-sizing
Implicit, câmpurile de formular au o mărime fixă (field-sizing: fixed): un <textarea> are câteva rânduri, iar când scrii mai mult apare bara de derulare. Cu field-sizing: content, câmpul crește pe măsură ce utilizatorul scrie și se micșorează când șterge textul.
Funcționează pe <textarea>, pe câmpurile <input> de text și pe <select>. De obicei îl combini cu min-height/max-height (sau min-width/max-width la input) ca să nu devină prea mic sau prea mare.
Suport: Chrome 123, Firefox 152 și Safari 26.2. În browserele mai vechi proprietatea este ignorată și câmpul rămâne la mărimea fixă, deci o poți folosi fără risc.
Valori uzuale
| Valoare | Descriere |
|---|---|
fixed |
Implicit: câmpul are mărimea dată de CSS sau de atributele lui. |
content |
Câmpul se adaptează la textul introdus (sau la placeholder când este gol). |
Exemple
Exemplul 1: Textarea care crește cât scrii
Pornește de la 3 rânduri și crește până la 300px; peste această limită apare derularea.
.comentariu textarea {
field-sizing: content;
min-height: 4.5em;
max-height: 300px;
width: 100%;
}
Efect vizual în browser
Când Ana scrie un comentariu lung despre restaurantul din Iași, câmpul se înalță rând cu rând. După 300px se oprește din crescut și apare bara de derulare.
Exemplul 2: Câmp pentru cod poștal cât textul din el
Inputul are lățimea textului, cu o limită minimă, în loc de lățimea fixă implicită.
.cod-postal {
field-sizing: content;
min-width: 4ch;
padding: 6px 8px;
}
Efect vizual în browser
Câmpul gol are lățimea placeholder-ului „Cod poștal”; după ce scrii „700506”, se strânge la lățimea celor 6 cifre.
Greșeli frecvente
field-sizing: contentfărămax-height; la un text foarte lung câmpul împinge restul formularului mult în jos.- Combinarea cu un script vechi care setează
style.heightla fiecare tastă; cele două se bat cap în cap. Păstrează scriptul doar pentru browserele fără suport, după un test cuCSS.supports("field-sizing", "content").
Comenzi înrudite
resize: Permite sau interzice utilizatorului să redimensioneze un element trăgând de colțul lui (de exemplu un textarea).width și height (min/max): Controlează dimensiunile orizontale și verticale ale unui element, inclusiv limitele minime și maxime permise.appearance: Elimină sau păstrează aspectul nativ al controalelor de formular (select, checkbox, radio), ca să le poți stiliza complet.