împachetare Css de cuvinte lungi. Cum să adăugați întreruperi de linie folosind proprietățile CSS
Internetul este alcătuit din conținut, conținutul este format din cuvinte și cuvintele pot fi foarte, foarte lungi. Și, mai devreme sau mai târziu, webmaster-ul se confruntă cu problema decupării cu silabe a cuvintelor lungi. Această problemă este relevantă în special pentru design responsive și pentru blocuri mici de conținut. Deci, cum te descurci cu această problemă?
Cratimă
Prima soluție pentru separarea cuvintelor lungi este folosirea unei cratime.
Defisi ( -webkit-hyphens: auto; -moz-hyphens: auto; -ms-hyphens: auto; hyphens: auto; )
Suport browser: cratimele CSS sunt acceptate de aproape toate browserele moderne, cu excepția Chrome, Opera, Android. De asemenea, foarte des este introdusă o cratimă în locuri care sunt incorecte din punct de vedere gramatical.
Pauza de cuvânt
Wordbreak este o proprietate CSS care indică dacă liniile trebuie întrerupte în cuvinte.
Obriv-slova ( -ms-word-break: break-all; word-break: break-all; word-break: sparge-cuvânt; )
Compatibilitate cu browser: rupturile de cuvinte sunt acceptate în toate browserele, cu excepția Opera Mini și a versiunilor mai vechi de Opera.
Ambalaj de preaplin
Următoarea soluție este să folosiți o folie de preaplin.
Obertka-perepolneniya (înfășurare de cuvânt: cuvânt de pauză; înfășurare de preaplin: cuvânt de întrerupere; )
Suport browser: acceptat în aproape toate browserele. Notă: Unele browsere necesită utilizarea „word-wrap” în loc de „overflow-wrap”.
Elipsă
O altă opțiune este utilizarea elipselor.
Mnogotochiye ( overflow: ascuns; spatiu alb: nowrap; text-overflow: puncte suspensie; )
Suport browser: acceptat de toate browserele moderne.
Această metodă funcționează, dar este departe de a fi ideală.
Solutia finala: Utilizarea Overflow și Hyphen Wrapper.
Finalnoye-resheniye ( overflow-wrap: break-word; word-wrap: break-word; -webkit-hyphens: auto; -ms-hyphens: auto; -moz-hyphens: auto; cratime: auto; )
Această soluție va permite unui browser care îl acceptă să insereze o cratimă, iar pentru browserele care nu o acceptă să introducă o întrerupere de linie.
Salutare tuturor și să începem. Să presupunem că avem următorul text:
Guvernul Emiratelor Arabe Unite și administrația concentrează în acest oraș toate cele mai noi tehnologii bazate pe ultimele realizări ale științei și tehnologiei, încercând să-l transforme într-un oraș al viitorului, parcă direct de pe ecranul unor science fiction. film. Aceste tehnologii includ polițiști robot, mașini robot și sistemul de transport Hyperloop, iar în viitorul apropiat va începe să funcționeze în Dubai un serviciu de taxi zburător automat. Și în pregătirea acestui eveniment, o aeronavă Volocopter electrică cu două locuri cu 18 rotoare, care va fi folosită ca taxi, a efectuat primul zbor în regim automat, scriu ei...
Aici avem un text cu care acum vom începe să lucrăm.
Și prima proprietate pe care o vom lua în considerare se numește word-break
ruptura de cuvinte: normal | păstrează-toate | rupe-totul
Suntem interesați în principal de două valori ale acestei proprietăți normale - valoarea implicită și break-all, cu ajutorul cărora stabilim că împachetarea cuvintelor se realizează caracter cu caracter. În ceea ce privește keep-all, această valoare este folosită pentru a încheia cuvintele în chineză, japoneză și coreeană.
P( ruptura de cuvinte: break-all;. )
Vă rugăm să rețineți că după utilizare al acestui stil tot textul nostru este întins la toată lățimea disponibilă, iar cratimele sunt realizate nu prin cuvinte, ci prin caractere. Această proprietate poate fi utilă atunci când avem un cuvânt foarte lung care nu se încadrează în lățimea specificată. Cu toate acestea, acest lucru creează un fel de inconvenient, deoarece absolut toate cuvintele sunt transferate caracter cu caracter, chiar și cele care se încadrează în lățimea dată.
Din fericire, există o proprietate similară care transferă numai cuvinte care nu se potrivesc în caractere. Se numește overflow-wrap:
P( overflow-wrap: break-word; )
și după aplicarea valorii de break-word, tot textul nostru este transferat cuvânt cu cuvânt, iar cuvintele care nu se încadrează în lățimea specificată sunt transferate caracter cu caracter. Putem spune că sarcina este finalizată! În plus față de valoarea cuvântului de ruptură, această proprietate acceptă:
overflow-wrap: normal | break-word | moşteni;
Acum să trecem la o proprietate CSS mai avansată pentru împachetarea cuvintelor în text.
Să luăm în considerare proprietatea white-space, cu care putem imita funcționarea etichetei pre fără a schimba textul în sine în monospace.
spatiu alb: normal | nowrap | pre | pre-linie | pre-împachetare | moşteni
În esență, folosind această proprietate, lucrăm doar cu spații din text. De exemplu, dacă aplicăm următorul stil textului nostru:
Spațiu alb: nowrap;
toate rupturile de linie vor fi ignorate și textul nostru va fi afișat ca o singură linie.
Spatiu alb: pre;
Dacă valoarea este pre, toate întreruperile de linie vor fi similare cu cele din codul sursă. În plus, dacă textul nu se încadrează în lățimea specificată, atunci nu va fi transferat. Dacă dorim să fie transferat, atunci trebuie să specificăm valoarea pre-linie.
Dacă vrem să luăm în considerare nu numai rupturile de rând cod sursă, dar și spații între cuvinte, atunci trebuie să specificați:
Spațiu alb: pre-înfășurare;
Acesta este, practic, tot ce am vrut să vă spun despre separarea cu silabe folosind CSS. Sper că acest articol ți-a fost de folos și vei folosi cunoștințele acumulate de mai multe ori.
Ei bine, îmi iau rămas bun de la tine. Va doresc succes si bafta! Pa!
Vlad Merjevici
Spre deosebire de text în tipărire, cratimele sunt rareori folosite pe o pagină web, deoarece nu suntem strict legați de formatul hârtiei. Site-urile pot fi vizualizate pe diferite monitoare, cu rezoluții diferite, în diferite sisteme de operareși browsere. Toate acestea dau naștere unei astfel de combinații de combinații încât este imposibil de prezis cum va arăta textul final pentru utilizator. Din această cauză, textul este de obicei aliniat la stânga, iar cratimele apar în cuvinte întregi. Dar totuși, separarea cuvintelor este necesară în unele cazuri, de exemplu, atunci când termeni chimici sau medicali lungi sunt utilizați în coloane înguste de o lățime dată, de dragul esteticii. În manualul HTML și CSS sau metode automate Nu sunt atât de multe cratime de adăugat, așa că le voi enumera pe toate.
Folosind o etichetă
Etichetă
Exemplul 1. Tag
Unul
Rezultatul acestui exemplu este prezentat în Fig. 1.
Orez. 1. Text cu cratime
Transfer moale
Aplicație
Exemplul 2: Transfer soft
Elevă în clasa a XI-a, Angelica, după ce a absolvit școala, a ales profesia de șofer de afaceri.
Rezultatul acestui exemplu este prezentat în Fig. 2. Observați cât de mult mai plăcut din punct de vedere estetic și mai clar arată textul în comparație cu figură. 1.
Orez. 2. Text cu cratime
proprietatea de rupere a cuvintelor
Pentru a automatiza procesul de creare a cratimelor, utilizați proprietatea word-break cu valoarea break-all (exemplul 3). Nu mai trebuie să adăugați niciun simbol sau etichetă la stilurile HTML, aveți grijă de tot.
Exemplul 3. Folosirea word-break
Angelica, în clasa a XI-a, a ales profesia de angajat de birou după absolvirea școlii.
Rezultatul acestui exemplu este prezentat în Fig. 3. Regulile pentru separarea textului cu silabe nu sunt luate în considerare în acest caz, astfel încât cuvintele pot fi separate cu silabe într-un mod foarte bizar.
Orez. 3. Text cu cratime
Dintre toate metodele enumerate, utilizarea „semi-manuală” dă cel mai bun rezultat - sunt respectate regulile limbii ruse, textul arată cel mai plăcut din punct de vedere estetic. Folosiți-l când există cuvinte lungi în text.
Proprietatea cratimelor
Și, în sfârșit, cea mai puternică și convenabilă proprietate pentru adăugare automată cratime - cratime. Acțiunea sa se bazează pe dicționarul de silabe integrat în browser, deci oferă cel mai bun rezultat. Suportat în IE10, Firefox, Android și iOS. Chrome și Opera nu acceptă. Pentru ca asta să funcționeze, pentru etichetă adăugați atributul lang cu valoarea ru (exemplul 4).
Exemplul 4: Utilizarea cratimelor
Angelica, în clasa a XI-a, a ales profesia de angajat de birou după absolvirea școlii.
Rezultatul acestui exemplu este prezentat în Fig. 4.
Orez. 4. Text cu cratime
Interzicerea transferurilor
Adesea apare sarcina opusă - interzicerea silabelor în locuri în care acestea sunt inacceptabile conform regulilor limbii. De exemplu, nu puteți separa unitățile de măsură dintr-un număr (10 ml), desemnarea unui an (54 î.Hr.), inițialele dintr-un nume de familie, nu puteți rupe abrevieri stabile (etc.), etc. Pentru a împiedica browserul să adauge cratime la spațiul spațial, acesta trebuie înlocuit cu un spațiu care nu se rupe (exemplul 5).
Exemplul 5: Utilizare
Lacul la coordonatele 70° 58′ 19″ N. w. 97° 24′ 5″ E. situat în regiunea Taimyr Dolgano-Nenets Teritoriul Krasnoyarsk
Rusia.
Proprietatea spațiu alb specifică modul de afișare a spațiilor dintre cuvinte. În circumstanțe normale, orice număr de spații din codul HTML apar ca unul singur pe o pagină web. Excepția este elementul
, textul plasat în acest container este scos cu toate spațiile, așa cum a fost formatat de utilizator. Deci, spațiul alb simulează muncaDar, spre deosebire de acesta, nu schimbă fontul în monospace.Informații scurte
Denumiri
Descriere | Exemplu | |
---|---|---|
<тип> | Indică tipul valorii. | <размер> |
A && B | Valorile trebuie să fie afișate în ordinea specificată. | <размер> && <цвет> |
A | B | Indică faptul că trebuie să selectați o singură valoare dintre cele propuse (A sau B). | normal | cu majuscule mici |
A || B | Fiecare valoare poate fi folosită independent sau împreună cu altele în orice ordine. | lățime || conta |
Grupează valori. | [ recolta || cruce] | |
* | Repetați de zero sau de mai multe ori. | [,<время>]* |
+ | Repetați una sau mai multe ori. | <число>+ |
? | Tipul, cuvântul sau grupul specificat este opțional. | medalion? |
(A, B) | Repetați cel puțin A, dar nu mai mult de B ori. | <радиус>{1,4} |
# | Repetați o dată sau de mai multe ori, separate prin virgule. | <время># |
Valori
normal Textul din fereastra browserului este afișat ca de obicei, rupturile de rând sunt setate automat. nowrap Spațiile nu sunt luate în considerare, rupturile de linie din codul HTML sunt ignorate, tot textul este afișat pe o singură linie; totodată, adăugând
împachetează textul pe o nouă linie. pre Textul este afișat luând în considerare toate spațiile și cratimele, așa cum au fost adăugate de dezvoltator în codul HTML. Dacă linia este prea lungă și nu se potrivește în fereastra browserului, va fi adăugată o bară de defilare orizontală. pre-line Spațiile nu sunt luate în considerare în text, textul este mutat automat pe linia următoare dacă nu se încadrează în zona specificată. pre-wrap Toate spațiile și pauzele sunt păstrate în text, totuși, dacă lățimea liniei nu se încadrează în zona specificată, textul va fi înfășurat automat la următoarea linie.
Efectul valorilor asupra textului este prezentat în tabel. 1.
Exemplu
Exemplu
Ultima teoremă a lui Fermat
X n+ Y n= Z n
unde n este un număr întreg > 2
Rezultatul acestui exemplu este prezentat în Fig. 1.
Orez. 1. Aplicarea proprietății spațiu alb
Model obiect
Obiect.stil.albSpaţiu
Nota
Browser Internet Explorer până la versiunea 7.0 inclusiv nu acceptă valorile pre-line și pre-wrap. Pentru
Opera înainte de versiunea 9.5 nu acceptă valoarea pre-linie. Pentru
În Firefox pentru
Caietul de sarcini
Fiecare specificație trece prin mai multe etape de aprobare.
- Recomandare - Specificația a fost aprobată de W3C și este recomandată ca standard.
- Recomandarea candidatului ( Recomandare posibilă ) - grupul responsabil de standard este mulțumit că își îndeplinește obiectivele, dar necesită ajutor din partea comunității de dezvoltare pentru a implementa standardul.
- Recomandare propusă Recomandare sugerată) - în această etapă documentul este înaintat Consiliului Consultativ W3C pentru aprobare finală.
- Proiect de lucru - O versiune mai matură a unui proiect care a fost discutat și modificat pentru revizuire comunitară.
- Schița redactorului ( Proiect editorial) - o versiune preliminară a standardului după ce au fost făcute modificări de către editorii de proiect.
- Ciornă ( Proiect de specificație) - prima versiune a standardului.
Proprietatea word-wrap specifică dacă să împacheteze sau nu cuvinte lungi care nu se potrivesc cu lățimea zonei specificate.
Informații scurte
Denumiri
Descriere | Exemplu | |
---|---|---|
<тип> | Indică tipul valorii. | <размер> |
A && B | Valorile trebuie să fie afișate în ordinea specificată. | <размер> && <цвет> |
A | B | Indică faptul că trebuie să selectați o singură valoare dintre cele propuse (A sau B). | normal | cu majuscule mici |
A || B | Fiecare valoare poate fi folosită independent sau împreună cu altele în orice ordine. | lățime || conta |
Grupează valori. | [ recolta || cruce] | |
* | Repetați de zero sau de mai multe ori. | [,<время>]* |
+ | Repetați una sau mai multe ori. | <число>+ |
? | Tipul, cuvântul sau grupul specificat este opțional. | medalion? |
(A, B) | Repetați cel puțin A, dar nu mai mult de B ori. | <радиус>{1,4} |
# | Repetați o dată sau de mai multe ori, separate prin virgule. | <время># |
Valori
Liniile normale nu sunt împachetate sau sunt împachetate în locuri în care împachetarea este specificată în mod explicit (de exemplu, folosind
). break-word Spărturile de linie sunt adăugate automat pentru a se asigura că cuvântul se încadrează în lățimea specificată a blocului.
Exemplu
Substantiv
Excelenţă
Substantiv animat
elev de clasa a XI-a
substanta chimica
metoxiclordietilaminometilbutilaminoacridina
Rezultatul acestui exemplu este prezentat în Fig. 1.
Orez. 1. Încheierea cuvintelor lungi
Model obiect
Obiect.style.wordWrap
Caietul de sarcini
Fiecare specificație trece prin mai multe etape de aprobare.
- Recomandare - Specificația a fost aprobată de W3C și este recomandată ca standard.
- Recomandarea candidatului ( Recomandare posibilă) - grupul responsabil de standard este mulțumit că își îndeplinește obiectivele, dar necesită ajutor din partea comunității de dezvoltare pentru a implementa standardul.
- Recomandare propusă Recomandare sugerată) - în această etapă documentul este înaintat Consiliului Consultativ W3C pentru aprobare finală.
- Proiect de lucru - O versiune mai matură a unui proiect care a fost discutat și modificat pentru revizuire comunitară.
- Schița redactorului ( Proiect editorial) - o versiune preliminară a standardului după ce au fost făcute modificări de către editorii de proiect.
- Ciornă ( Proiect de specificație) - prima versiune a standardului.