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 twelve elements: <altGlyph>
, <circle>
, <ellipse>
, <path>
, <line>
, <polygon>
, <polyline>
, <rect>
, <text>
, <textPath>
, <tref>
, and <tspan>
html,body,svg { height:100% }
<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>
Usage notes
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 the stroke partially covers the fill of a shape, so a stroke with an opacity different than 1
will partially show the fill underneath. To avoid this 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.
Browser compatibility
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
stroke-opacity | Chrome ? | Edge ? | Firefox ? | IE ? | Opera ? | Safari ? | WebView Android ? | Chrome Android ? | Firefox Android ? | Opera Android ? | Safari iOS ? | Samsung Internet Android ? |
Legend
- Compatibility unknown
- Compatibility unknown
Specification
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 |