Proprietatea CSS paint-order
stabilește ordinea în care sunt desenate formele și textul SVG, inclusiv umplerea, linia și orice markere care ar putea fi utilizate. În mod implicit, aceste atribute sunt desenate în aceeași ordine: umplere, linie și markeri. Această proprietate ne permite să o schimbăm, astfel încât să avem mai mult control asupra aspectului rezultat.
Unde această proprietate strălucește cu adevărat este cu textul SVG, în special un element care are atât o umplere, cât și o linie. Ca aceasta:
Ugh, acea lovitură este grea. Are o lățime de doar 6 px, dar acoperă în mod obișnuit umplutura. Asta pentru că umplutura este pictată mai întâi, în mod implicit, urmată de linie. Dar dacă inversăm folosirea paint-order
proprietății, umplutura este vopsită ultima și acoperă porțiunile inestetice ale cursei.
Doamne, e mult mai bine! Putem de fapt să citim textul, iar lovitura este mai adevărată decât forma personajelor decât înainte.
Sintaxă
paint-order: normal | ( fill || stroke || markers )
- Valoarea initiala:
normal
- Se aplică: formelor și elementelor de conținut text
- Moștenit: da
- Tipul de animație: discret
Valori
/* Normal */ paint-order: normal; /* Single values */ paint-order: stroke; /* same as: stroke fill markers */ paint-order: markers; /* same as: markers fill stroke */ /* Multiple values */ paint-order: stroke fill; /* same as: stroke fill markers */ paint-order: markers stroke fill;
Este demn de remarcat faptul că este absolut legitim să treci o valoare. De exemplu, dacă am făcut acest lucru:
paint-order: stroke;
… Apoi stroke
va fi pictat primul, urmat de celelalte valori în ordinea lor implicită. Luând în considerare acest lucru, acest exemplu este egal cu următorul:
Aceasta înseamnă, în principiu, că proprietatea acceptă fie o valoare, normal
fie o combinație a acesteia fill
, stroke
și markers
în ordinea în care ar trebui să fie vopsite.
paint-order: stroke fill markers
Și ce se întâmplă dacă nu este furnizată nicio valoare sau una nevalidă? Se va utiliza comanda implicită: umplere, linie, markeri.
Suport pentru browser
IE | Margine | Firefox | Crom | Safari | Operă |
---|---|---|---|---|---|
Nu | Peste 17 ani | Peste 60 de ani | Peste 35 de ani | 8+ | 22+ |
Android Chrome | Android Firefox | Browser Android | Safari iOS | Opera mini |
---|---|---|---|---|
Peste 85 de ani | Peste 79 de ani | Peste 81 de ani | 8+ | Toate |
Lecturi suplimentare
- Specificații de nivel 2 pentru grafica vectorială scalabilă (SVG) (Recomandarea candidatului)