This article needs a technical review. How you can help.
« SVG Attribute reference home
The paint-order
attribute specifies the order that the fill, stroke, and markers of a given shape or text element are painted. Its default value is normal, which indicates that the fill will be painted first, then the stroke, and finally the markers. To specify a different order, a white space separated list of keywords fill, stroke, and markers can be used. If any of the three painting components is omitted, then they will be painted in their default order after the specified components. For example, using stroke is equivalent to stroke fill markers.
As a presentation attribute, it also can be used as a property directly inside a CSS stylesheet.
Usage context
Categories | Presentation attribute |
---|---|
Value | normal | [ fill || stroke || markers ] | inherit |
Animatable | Yes |
Normative document | SVG 2 |
Example
<svg xmlns="https://www.w3.org/2000/svg" width="400" height="200"> <linearGradient id="g" x1="0" y1="0" x2="0" y2="1"> <stop stop-color="#888"/> <stop stop-color="#ccc" offset="1"/> </linearGradient> <rect width="400" height="200" fill="url(#g)"/> <g fill="crimson" stroke="white" stroke-width="6" stroke-linejoin="round" text-anchor="middle" font-family="sans-serif" font-size="50px" font-weight="bold"> <text x="200" y="75">stroke over</text> <text x="200" y="150" paint-order="stroke">stroke under</text> </g> </svg>
The example would be rendered as follows:
Elements
The following elements can use the paint-order
attribute:
Browser compatibility
Feature | Firefox (Gecko) | Chrome | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | (Yes) | (Yes) | No support | (Yes) | (Yes) |
Feature | Firefox Mobile (Gecko) | Android | IE Phone | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|
Basic support | ? | No support | No support | No support | No support |