overflow-wrap
Proprietatea în CSS vă permite să specificați că browser - ul poate rupe o linie de text în interiorul elementului vizat pe mai multe linii într - un loc în alt mod incasabil. Acest lucru ajută la evitarea unui șir neobișnuit de lung de text care provoacă probleme de aspect din cauza revărsării.
.example ( overflow-wrap: break-word; )
Valori
normal
: implicit. Browserul va sparge liniile conform regulilor normale de rupere a liniilor. Cuvintele sau șirurile neîntrerupte nu se vor sparge, chiar dacă vor revărsa containerul.break-word
: cuvintele sau șirurile de caractere care sunt prea mari pentru a se potrivi în containerul lor se vor sparge într-un loc arbitrar pentru a forța o rupere de linie. Un caracter cu cratimă nu va fi inserat, chiar dacăhyphens
proprietatea este utilizată.inherit
: elementul vizat trebuie să moștenească valoareaoverflow-wrap
proprietății definită de părintele său imediat.
Demo-ul de mai jos are un buton de comutare care vă permite să comutați între normal
și break-word
.
Vedeți demonstrația Overflow-wrap / word-wrap de Louis Lazaris (@impressivewebs) pe CodePen.
Pentru a demonstra problema pe care overflow-wrap
încearcă să o rezolve, demo-ul folosește un cuvânt neobișnuit de lung într-un container relativ mic. Când comutați break-word
, cuvântul este rupt pentru a găzdui cantitatea mică de spațiu disponibil, ca și cum cuvântul ar fi mai multe cuvinte.
Un șir de caractere spațiale care nu se întrerup (
) ar fi tratat la fel și s-ar rupe, de asemenea, la un loc adecvat.
overflow-wrap
este util atunci când se aplică elementelor care conțin conținut generat de utilizator nemodificat (cum ar fi secțiunile de comentarii). Acest lucru poate împiedica adresele URL lungi și alte șiruri de text neîntrerupte (de exemplu, vandalism) să rupă aspectul unei pagini web.
Asemănări cu word-break
proprietatea
overflow-wrap
și word-break
se comportă foarte similar și pot fi folosite pentru a rezolva probleme similare. Un rezumat de bază al diferenței, așa cum se explică în specificația CSS este:
overflow-wrap
este utilizat în general pentru a evita problemele cu șiruri lungi care provoacă structuri rupte din cauza textului care curge în afara containerului.word-break
specifică oportunități de împachetare ușoară între litere asociate în mod obișnuit cu limbi precum chineza, japoneza și coreeana (CJK).
După ce a descris exemple despre modul în care word-break
poate fi utilizat în conținutul CJK, specificația spune: „Pentru a activa oportunități suplimentare de pauză numai în cazul depășirii, consultați overflow-wrap
„.
Din aceasta, putem presupune că word-break
este cel mai bine utilizat cu conținut non-englez, care necesită reguli specifice de rupere a cuvintelor și care ar putea fi intercalat cu conținut în limba engleză, în timp ce overflow-wrap
ar trebui utilizat pentru a evita aspectele rupte din cauza șirurilor lungi, indiferent de limba utilizată .
word-wrap
Proprietatea istorică
overflow-wrap
este numele standard pentru predecesorul său, word-wrap
proprietatea. word-wrap
a fost inițial o caracteristică exclusivă Internet Explorer, care a fost acceptată în cele din urmă în toate browserele, în ciuda faptului că nu este un standard.
word-wrap
acceptă aceleași valori ca overflow-wrap
și se comportă la fel. Conform specificațiilor, browserele „trebuie să trateze word-wrap
ca un nume alternativ pentru overflow-wrap
proprietate, ca și cum ar fi o prescurtare a overflow-wrap
„. De asemenea, toți agenții utilizator sunt obligați să sprijine word-wrap
pe termen nelimitat, din motive vechi.
Ambele overflow-wrap
și word-wrap
vor trece validarea CSS atâta timp cât validatorul este setat să testeze în funcție de CSS3 sau mai mare (în prezent implicit).
Legate de
- pauză de cuvinte
- cratime
- spatiu alb
- Gestionarea cuvintelor lungi și a adreselor URL
Mai multe informatii
- Word-Wrap: o proprietate CSS3 care funcționează în fiecare browser
- Împachetarea cu preaplin pe W3C
- Discuție despre Stack Overflow pe
word-break
vs.overflow-wrap
Suport pentru browser
Aceste date de asistență pentru browser provin de la Caniuse, care are mai multe detalii. Un număr indică faptul că browserul acceptă funcția în versiunea respectivă și în sus.
Desktop
Crom | Firefox | IE | Margine | Safari |
---|---|---|---|---|
23 | 49 | 11 | 18 | 6.1 |
Mobil / Tabletă
Android Chrome | Android Firefox | Android | Safari iOS |
---|---|---|---|
88 | 85 | 4.4 | 7.0-7.1 |
Suportul „parțial” indicat mai sus se datorează browserelor mai vechi care acceptă, word-wrap
dar nu overflow-wrap
. Utilizarea ambelor poate asigura compatibilitatea înapoi.
Versiunea preliminară a editorului a specificației W3C include o nouă valoare numită break-spaces
care tratează secvențe de caractere spațiale albe „conservate”. Nu există un suport de browser cunoscut pentru această caracteristică și nu este inclus în versiunea preliminară de lucru a specificației.