De CSS- paint-order
eigenschap stelt de volgorde in waarin SVG-vormen en tekst worden getekend, inclusief de vulling, lijn en eventuele markeringen die in gebruik zijn. Standaard worden die attributen in diezelfde volgorde getekend: vulling, lijn en markeringen. Deze eigenschap stelt ons in staat om het uit te schakelen, zodat we meer controle hebben over het resulterende uiterlijk.
Waar deze eigenschap echt uitblinkt, is met SVG-tekst, met name een element dat zowel een vulling als een lijn heeft. Zoals dit:
Ugh, die slag is knoestig. Het is slechts 6 px breed, maar het bedekt de vulling ongeveer. Dat komt omdat de vulling standaard eerst wordt geverfd, gevolgd door de lijn. Maar als we dat omkeren met behulp van de paint-order
eigenschap, wordt de vulling als laatste geverfd en worden de onooglijke delen van de streek bedekt.
Oh god, dat is zo veel beter! We kunnen de tekst echt lezen en de streek is meer gelijk aan de vorm van de karakters dan voorheen.
Syntaxis
paint-order: normal | ( fill || stroke || markers )
- Beginwaarde:
normal
- Geldt voor: vormen en tekstelementen
- Overgenomen: ja
- Animatietype: discreet
Waarden
/* 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;
Het is vermeldenswaard dat het volkomen legitiem is om één waarde door te geven. Als we dit bijvoorbeeld hebben gedaan:
paint-order: stroke;
… Dan stroke
wordt het eerst geverfd, gevolgd door de andere waarden in hun standaardvolgorde. Hiermee rekening houdend, is dit voorbeeld gelijk aan het volgende:
Dit betekent in feite dat het geaccepteerd ofwel een waarde van normal
of een combinatie van fill
, stroke
en markers
in de volgorde waarin zij moeten worden geverfd.
paint-order: stroke fill markers
En wat gebeurt er als er geen waarde of een ongeldige waarde wordt opgegeven? De standaardvolgorde wordt gebruikt: vulling, lijn, markeringen.
Browser-ondersteuning
D.W.Z | Rand | Firefox | Chrome | Safari | Opera |
---|---|---|---|---|---|
Nee | 17+ | 60+ | 35+ | 8+ | 22+ |
Android Chrome | Android Firefox | Android-browser | iOS Safari | Opera Mini |
---|---|---|---|---|
85+ | 79+ | 81+ | 8+ | Alle |
Verder lezen
- Scalable Vector Graphics (SVG) niveau 2-specificatie (aanbeveling van kandidaat)