The stroke-opacity attribute is a presentation attribute defining the opacity of the paint server (color, gradient, pattern, etc) applied to the stroke of a shape.
Note: As a presentation attribute stroke-opacity can be used as a CSS property.
As a presentation attribute, it can be applied to any element but it has effect only on the following eleven elements: <altGlyph>, <circle>, <ellipse>, <path>, <polygon>, <polyline>, <rect>, <text>, <textPath>, <tref>, and <tspan>
<svg viewBox="0 0 40 10" xmlns="http://www.w3.org/2000/svg">
<!-- Default stroke opacity: 1 -->
<circle cx="5" cy="5" r="4" stroke="green" />
<!-- Stroke opacity as a number -->
<circle cx="15" cy="5" r="4" stroke="green"
stroke-opacity="0.7" />
<!-- Stroke opacity as a percentage -->
<circle cx="25" cy="5" r="4" stroke="green"
stroke-opacity="50%" />
<!-- Stroke opacity as a CSS property -->
<circle cx="35" cy="5" r="4" stroke="green"
style="stroke-opacity: .3;" />
</svg> | Value |
[0-1] | <percentage>
|
|---|---|
| Default value | 1 |
| Animatable | Yes |
Note: SVG2 introduces percentage values for stroke-opacity, however, it is not widely supported yet (See Browser compatibility below) as a consequence, it is best practices to set opacity with a value in the range [0-1].
It's important to know that stroke partially cover the fill of a shape, therefor a stroke with an opacity different than 1 will partially show the fill underneath. To avoid that effect, it is possible to apply a global opacity with the opacity attribute or to put the stroke behind the fill with the paint-order attribute.
| Desktop | ||||||
|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
| Basic support | ? | ? | ? | ? | ? | ? |
| Mobile | |||||||
|---|---|---|---|---|---|---|---|
| Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
| Basic support | ? | ? | ? | ? | ? | ? | ? |
| Specification | Status | Comment |
|---|---|---|
| Scalable Vector Graphics (SVG) 2 The definition of 'stroke-opacity' in that specification. | Candidate Recommendation | Definition for shapes and texts |
| Scalable Vector Graphics (SVG) 1.1 (Second Edition) The definition of 'stroke-opacity' in that specification. | Recommendation | Initial definition for shapes and texts |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/stroke-opacity