stroke-opacity
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2020.
Thestroke-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 also has a CSS property counterpart:stroke-opacity. When both are specified, the CSS property takes priority.
You can use this attribute with the following SVG elements:
In this article
Example
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" /></svg>Usage notes
| Value | [0-1] |<percentage> |
|---|---|
| Default value | 1 |
| Animatable | Yes |
It's important to know that the stroke partially covers the fill of a shape, so a stroke with an opacity different than1 will partially show the fill underneath. To avoid this effect, it is possible to apply a global opacity with theopacity attribute or to put the stroke behind the fill with thepaint-order attribute.
Specifications
| Specification |
|---|
| Scalable Vector Graphics (SVG) 2> # StrokeOpacity> |
Browser compatibility
See also
- CSS
stroke-opacityproperty