---
title: fill-rule
slug: Web/SVG/Attribute/fill-rule
tags:
- SVG
- SVG Attribute
translation_of: Web/SVG/Attribute/fill-rule
---
{{SVGRef}}
L'attribut **`fill-rule`** définit l'algorithme à utiliser pour déterminer les parties qui sont considérées _à l'intérieur_ de la forme.
> **Note :** `fill-rule` est un attribut de présentation et peut donc être utilisé comme propriété CSS.
Cet attribut peut être appliqué à n'importe quel élément mais n'aura d'effet que sur les éléments suivants: {{SVGElement('altGlyph')}}, {{SVGElement('path')}}, {{SVGElement('polygon')}}, {{SVGElement('polyline')}}, {{SVGElement('text')}}, {{SVGElement('textPath')}}, {{SVGElement('tref')}}, et {{SVGElement('tspan')}}
## Exemple
```css hidden
html,body,svg { height:100% }
```
```html
```
{{EmbedLiveSample('Exemple', '100%', 200)}}
## Usage
Valeur
nonzero | evenodd
Valeur par défaut
nonzero
Animation
Yes
L'attribut `fill-rule` peut prendre deux valeurs:
### nonzero
La valeur `nonzero` détermine si un point est à l'intérieur d'une forme en dessinant un rayon à partir de ce point vers l'infini dans toutes les directions, puis examine les endroits où un segment de la forme traverse le rayon.
À chaque fois qu'un segment traverse le rayon de gauche à droite, on ajoute un. À chaque fois qu'un segment traverse le rayon de droite à gauche, on soustrait un. Si au final, le compte est égal à zéro, le point est l'extérieur. Dans le cas contraire, il est à l'intérieur.
#### Exemple
```css hidden
html,body,svg { height:100% }
```
```html
```
{{EmbedLiveSample('nonzero', '100%', 200)}}
### evenodd
La valeur `evenodd` détermine si un point est à l'intérieur d'une forme en dessinant un rayon de à partir de ce point vers l'infini dans toutes les directions, et compte le nombre de segments de la forme qui traversent ce rayon. Si ce nombre est impair (_odd_ en anglais), alors le point est à l'intérieur. Si le nombre est pair (_even_ en anglais), alors le point est à l'extérieur.
#### Exemple
```css hidden
html,body,svg { height:100% }
```
```html
```
{{EmbedLiveSample('evenodd', '100%', 200)}}
## Compatibilité des navigateurs
{{Compat("svg.attributes.presentation.fill-rule")}}
## Spécification
| Spécification | Statut | Commentaire |
| -------------------------------------------------------------------------------------------- | ------------------------ | ----------------------------------------------- |
| {{SpecName("SVG2", "painting.html#FillRuleProperty", "fill-rule")}} | {{Spec2("SVG2")}} | Définition pour les formes et le texte |
| {{SpecName("SVG1.1", "painting.html#FillRuleProperty", "fill-rule")}} | {{Spec2("SVG1.1")}} | Définition initiale pour les formes et le texte |