aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/css/clip-path
diff options
context:
space:
mode:
authorjulieng <julien.gattelier@gmail.com>2021-09-17 20:59:20 +0200
committerSphinxKnight <SphinxKnight@users.noreply.github.com>2021-10-12 07:57:33 +0200
commit258ba7b4be62d8640477a3bd3146d08b00cb70ec (patch)
treea8476eee4c369ff47bdfe08353774414f2281ba3 /files/fr/web/css/clip-path
parent149319bb8c7b1394a443f0877c3460cd362aa815 (diff)
downloadtranslated-content-258ba7b4be62d8640477a3bd3146d08b00cb70ec.tar.gz
translated-content-258ba7b4be62d8640477a3bd3146d08b00cb70ec.tar.bz2
translated-content-258ba7b4be62d8640477a3bd3146d08b00cb70ec.zip
convert content to md
Diffstat (limited to 'files/fr/web/css/clip-path')
-rw-r--r--files/fr/web/css/clip-path/index.md825
1 files changed, 404 insertions, 421 deletions
diff --git a/files/fr/web/css/clip-path/index.md b/files/fr/web/css/clip-path/index.md
index 1888fb3c17..2ff8f69746 100644
--- a/files/fr/web/css/clip-path/index.md
+++ b/files/fr/web/css/clip-path/index.md
@@ -8,23 +8,22 @@ tags:
- Reference
translation_of: Web/CSS/clip-path
---
-<div>{{CSSRef}}</div>
+{{CSSRef}}
-<p>La propriété <code><strong>clip-path</strong></code> empêche une portion d'un élément d'être affichée en définissant une région de rognage. Seule une zone spécifique de l'élément sera affichée. La zone de rognage est un chemin défini avec une URL faisant référence à un SVG externe ou en ligne ou grâce à une fonction de forme comme <code><a href="/fr/docs/Web/SVG/Element/circle">circle()</a></code>.</p>
+La propriété **`clip-path`** empêche une portion d'un élément d'être affichée en définissant une région de rognage. Seule une zone spécifique de l'élément sera affichée. La zone de rognage est un chemin défini avec une URL faisant référence à un SVG externe ou en ligne ou grâce à une fonction de forme comme [`circle()`](/fr/docs/Web/SVG/Element/circle).
-<div>{{EmbedInteractiveExample("pages/css/clip-path.html")}}</div>
+{{EmbedInteractiveExample("pages/css/clip-path.html")}}
-<div class="note">
-<p><strong>Note :</strong> La propriété <code>clip-path</code> remplace la propriété {{cssxref("clip")}} désormais dépréciée.</p>
-</div>
+> **Note :** La propriété `clip-path` remplace la propriété {{cssxref("clip")}} désormais dépréciée.
-<h2 id="Syntaxe">Syntaxe</h2>
+## Syntaxe
-<pre class="brush:css no-line-numbers">/* Valeurs avec un mot-clé */
+```css
+/* Valeurs avec un mot-clé */
clip-path: none;
/* Valeurs pointant vers une image */
-/* Type &lt;clip-source&gt; */
+/* Type <clip-source> */
clip-path: url(resources.svg#c1);
/* Valeurs de boîte */
@@ -43,351 +42,350 @@ clip-path: circle(50px at 0 100px);
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
clip-path: path('M0.5,1 C0.5,1,0,0.7,0,0.3 A0.25,0.25,1,1,1,0.5,0.3 A0.25,0.25,1,1,1,1,0.3 C1,0.7,0.5,1,0.5,1 Z');
-/* Combinaison boîte &amp; géométrie */
+/* Combinaison boîte & géométrie */
clip-path: padding-box circle(50px at 0 100px);
/* Valeurs globales */
clip-path: inherit;
clip-path: initial;
clip-path: unset;
-</pre>
-
-<p>La propriété <code>clip-path</code> est définie avec une ou plusieurs des valeurs listées ci-après.</p>
-
-<h3 id="Valeurs">Valeurs</h3>
-
-<dl>
- <dt><code>url()</code></dt>
- <dd>Une URL qui fait référence à un élément contenant le chemin de rognage.</dd>
- <dt><code>inset()</code>, <code>circle()</code>, <code>ellipse()</code>, <code>polygon()</code></dt>
- <dd>Une fonction {{cssxref("&lt;basic-shape&gt;")}}. Une telle forme utilise la valeur <code>&lt;geometry-box&gt;</code> pour déterminer la taille et la position de la forme. Si aucune boîte de géométrie n'est indiquée, c'est la boîte de bordure (<code>border-box</code>) qui sera utilisée comme boîte de réference.</dd>
- <dt><code>&lt;geometry-box&gt;</code></dt>
- <dd>Si cette valeur est combinée avec une valeur <code>&lt;basic-shape&gt;</code>, elle définira la boîte de référence dans laquelle placer la forme. Si elle est utilisée seule, ce sont les bords de la boîte (ainsi que les éventuels coins arrondis définis avec {{cssxref("border-radius")}}) qui sont utilisés comme ligne de rognage. Cette composante peut prendre les valeurs suivante :
- <dl>
- <dt><code>fill-box</code></dt>
- <dd>La boîte englobant (<em>bounding box</em>) est utilisée comme boîte de référence.</dd>
- <dt><code>stroke-box</code></dt>
- <dd>La boîte de contour de la boîte englobante est utilisée comme boîte de référence.</dd>
- <dt><code>view-box</code></dt>
- <dd>La zone d'affichage SVG la plus proche est utilisée comme boîte de référence. Si un attribut {{SVGAttr("viewBox")}} est défini pour l'élément qui crée la zone d'affichage SVG, la boîte de référence est située à l'origine du système construit par <code>viewBox</code> et les dimensions de la boîte de référence sont les valeurs de hauteur et de largeur de l'attribut <code>viewBox</code>.</dd>
- <dt><code>margin-box</code></dt>
- <dd>La boîte de marge est utilisée comme boîte de référence</dd>
- <dt><code>border-box</code></dt>
- <dd>La boîte de bordure est utilisée comme boîte de référence</dd>
- <dt><code>padding-box</code></dt>
- <dd>La boîte de remplissage (<em>padding</em>) est utilisée comme boîte de référence</dd>
- <dt><code>content-box</code></dt>
- <dd>La boîte de contenu est utilisée comme boîte de référence.</dd>
- </dl>
- </dd>
- <dt><code>none</code></dt>
- <dd>Aucun chemin de rognage n'est créé.</dd>
-</dl>
-
-<div class="note">
-<p><strong>Note :</strong> Si <a href="/fr/docs/Web/CSS/Valeur_calcul%C3%A9e">la valeur calculée</a> est différente de <code>none</code>, cela entraînera  la création d'un nouveau <a href="/fr/docs/Glossaire/Contexte_d_empilement">contexte d'empilement</a> (de la même façon qu'{{cssxref("opacity")}} avec des valeurs différentes de 1).</p>
-</div>
+```
+
+La propriété `clip-path` est définie avec une ou plusieurs des valeurs listées ci-après.
+
+### Valeurs
+
+- `url()`
+ - : Une URL qui fait référence à un élément contenant le chemin de rognage.
+- `inset()`, `circle()`, `ellipse()`, `polygon()`
+ - : Une fonction {{cssxref("&lt;basic-shape&gt;")}}. Une telle forme utilise la valeur `<geometry-box>` pour déterminer la taille et la position de la forme. Si aucune boîte de géométrie n'est indiquée, c'est la boîte de bordure (`border-box`) qui sera utilisée comme boîte de réference.
+- `<geometry-box>`
+
+ - : Si cette valeur est combinée avec une valeur `<basic-shape>`, elle définira la boîte de référence dans laquelle placer la forme. Si elle est utilisée seule, ce sont les bords de la boîte (ainsi que les éventuels coins arrondis définis avec {{cssxref("border-radius")}}) qui sont utilisés comme ligne de rognage. Cette composante peut prendre les valeurs suivante :
-<h3 id="Syntaxe_formelle">Syntaxe formelle</h3>
+ - `fill-box`
+ - : La boîte englobant (_bounding box_) est utilisée comme boîte de référence.
+ - `stroke-box`
+ - : La boîte de contour de la boîte englobante est utilisée comme boîte de référence.
+ - `view-box`
+ - : La zone d'affichage SVG la plus proche est utilisée comme boîte de référence. Si un attribut {{SVGAttr("viewBox")}} est défini pour l'élément qui crée la zone d'affichage SVG, la boîte de référence est située à l'origine du système construit par `viewBox` et les dimensions de la boîte de référence sont les valeurs de hauteur et de largeur de l'attribut `viewBox`.
+ - `margin-box`
+ - : La boîte de marge est utilisée comme boîte de référence
+ - `border-box`
+ - : La boîte de bordure est utilisée comme boîte de référence
+ - `padding-box`
+ - : La boîte de remplissage (_padding_) est utilisée comme boîte de référence
+ - `content-box`
+ - : La boîte de contenu est utilisée comme boîte de référence.
+
+- `none`
+ - : Aucun chemin de rognage n'est créé.
+
+> **Note :** Si [la valeur calculée](/fr/docs/Web/CSS/Valeur_calcul%C3%A9e) est différente de `none`, cela entraînera  la création d'un nouveau [contexte d'empilement](/fr/docs/Glossaire/Contexte_d_empilement) (de la même façon qu'{{cssxref("opacity")}} avec des valeurs différentes de 1).
+
+### Syntaxe formelle
{{csssyntax}}
-<h2 id="Exemples">Exemples</h2>
-
-<h3 id="Comparaison_entre_HTML_et_SVG">Comparaison entre HTML et SVG</h3>
-
-<pre class="brush: html hidden">&lt;svg class="defs"&gt;
- &lt;defs&gt;
- &lt;clipPath id="myPath" clipPathUnits="objectBoundingBox"&gt;
- &lt;path d="M0.5,1 C0.5,1,0,0.7,0,0.3 A0.25,0.25,1,1,1,0.5,0.3 A0.25,0.25,1,1,1,1,0.3 C1,0.7,0.5,1,0.5,1 Z" /&gt;
- &lt;/clipPath&gt;
- &lt;/defs&gt;
-&lt;/svg&gt;
-
-&lt;div class="grid"&gt;
- &lt;div class="col"&gt;
- &lt;div class="note"&gt;clip-path: none&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="none"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="none"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: url(#myPath)&lt;br&gt;&lt;br&gt;
+## Exemples
+
+### Comparaison entre HTML et SVG
+
+```html hidden
+<svg class="defs">
+ <defs>
+ <clipPath id="myPath" clipPathUnits="objectBoundingBox">
+ <path d="M0.5,1 C0.5,1,0,0.7,0,0.3 A0.25,0.25,1,1,1,0.5,0.3 A0.25,0.25,1,1,1,1,0.3 C1,0.7,0.5,1,0.5,1 Z" />
+ </clipPath>
+ </defs>
+</svg>
+
+<div class="grid">
+ <div class="col">
+ <div class="note">clip-path: none</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="none">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="none">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: url(#myPath)<br><br>
Assuming the following clipPath definition:
- &lt;pre&gt;
-&amp;lt;svg&amp;gt;
- &amp;lt;clipPath id="myPath" clipPathUnits="objectBoundingBox"&amp;gt;
- &amp;lt;path d="M0.5,1
+ <pre>
+&lt;svg&gt;
+ &lt;clipPath id="myPath" clipPathUnits="objectBoundingBox"&gt;
+ &lt;path d="M0.5,1
C 0.5,1,0,0.7,0,0.3
A 0.25,0.25,1,1,1,0.5,0.3
A 0.25,0.25,1,1,1,1,0.3
- C 1,0.7,0.5,1,0.5,1 Z" /&amp;gt;
- &amp;lt;/clipPath&amp;gt;
-&amp;lt;/svg&amp;gt;&lt;/pre&gt;
- &lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="svg"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="svg"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: path('M15,45 A30,30,0,0,1,75,45 A30,30,0,0,1,135,45 Q135,90,75,130 Q15,90,15,45 Z')
- &lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="svg2"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="svg2"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
-
-
- &lt;div class="note"&gt;clip-path: circle(25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape1"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape1"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape2"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape2"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: fill-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape3"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape3"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: stroke-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape4"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape4"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: view-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape5"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape5"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: margin-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape6"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape6"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: border-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape7"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape7"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: padding-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape8"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape8"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-
- &lt;div class="note"&gt;clip-path: content-box circle(25% at 25% 25%)&lt;/div&gt;
- &lt;div class="row"&gt;
- &lt;div class="cell"&gt; &lt;span&gt;HTML&lt;/span&gt;
- &lt;div class="container"&gt;
- &lt;p class="shape9"&gt;
- I LOVE&lt;br&gt;&lt;em&gt;clipping&lt;/em&gt;
- &lt;/p&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;div class="cell"&gt; &lt;span&gt;SVG&lt;/span&gt;
- &lt;div class="container viewbox"&gt;
- &lt;svg viewBox="0 0 192 192"&gt;
- &lt;g class="shape9"&gt;
- &lt;rect x="24" y="24" width="144" height="144" /&gt;
- &lt;text x="96" y="91"&gt;I LOVE&lt;/text&gt;
- &lt;text x="96" y="109" class="em"&gt;clipping&lt;/text&gt;
- &lt;/g&gt;
- &lt;/svg&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
- &lt;/div&gt;
-&lt;/div&gt;</pre>
-
-<pre class="brush: css">html,body {
+ C 1,0.7,0.5,1,0.5,1 Z" /&gt;
+ &lt;/clipPath&gt;
+&lt;/svg&gt;</pre>
+ </div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="svg">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="svg">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: path('M15,45 A30,30,0,0,1,75,45 A30,30,0,0,1,135,45 Q135,90,75,130 Q15,90,15,45 Z')
+ </div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="svg2">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="svg2">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+
+
+ <div class="note">clip-path: circle(25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape1">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape1">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape2">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape2">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: fill-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape3">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape3">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: stroke-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape4">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape4">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: view-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape5">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape5">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: margin-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape6">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape6">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: border-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape7">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape7">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: padding-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape8">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape8">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+
+ <div class="note">clip-path: content-box circle(25% at 25% 25%)</div>
+ <div class="row">
+ <div class="cell"> <span>HTML</span>
+ <div class="container">
+ <p class="shape9">
+ I LOVE<br><em>clipping</em>
+ </p>
+ </div>
+ </div>
+ <div class="cell"> <span>SVG</span>
+ <div class="container viewbox">
+ <svg viewBox="0 0 192 192">
+ <g class="shape9">
+ <rect x="24" y="24" width="144" height="144" />
+ <text x="96" y="91">I LOVE</text>
+ <text x="96" y="109" class="em">clipping</text>
+ </g>
+ </svg>
+ </div>
+ </div>
+ </div>
+ </div>
+</div>
+```
+
+```css
+html,body {
height: 100%;
box-sizing: border-box;
background: #EEE;
@@ -514,91 +512,76 @@ svg text {
svg text.em {
font-style: italic;
-}</pre>
-
-<p>{{EmbedLiveSample("Comparaison_entre_HTML_et_SVG", "100%", 800, "", "", "example-outcome-frame")}}</p>
-
-<h3 id="Exemple_complet">Exemple complet</h3>
-
-<h4 id="HTML">HTML</h4>
-
-<pre class="brush: html">&lt;img id="clipped" src="https://mdn.mozillademos.org/files/12668/MDN.svg"
- alt="MDN logo"&gt;
-&lt;svg height="0" width="0"&gt;
- &lt;defs&gt;
- &lt;clipPath id="cross"&gt;
- &lt;rect y="110" x="137" width="90" height="90"/&gt;
- &lt;rect x="0" y="110" width="90" height="90"/&gt;
- &lt;rect x="137" y="0" width="90" height="90"/&gt;
- &lt;rect x="0" y="0" width="90" height="90"/&gt;
- &lt;/clipPath&gt;
- &lt;/defs&gt;
-&lt;/svg&gt;
-
-&lt;select id="clipPath"&gt;
- &lt;option value="none"&gt;none&lt;/option&gt;
- &lt;option value="circle(100px at 110px 100px)"&gt;circle&lt;/option&gt;
- &lt;option value="url(#cross)" selected&gt;cross&lt;/option&gt;
- &lt;option value="inset(20px round 20px)"&gt;inset&lt;/option&gt;
- &lt;option value="path('M 0 200 L 0,110 A 110,90 0,0,1 240,100 L 200 340 z')"&gt;path&lt;/option&gt;
-&lt;/select&gt;
-</pre>
-
-<h4 id="CSS">CSS</h4>
-
-<pre class="brush: css">#clipped {
+}
+```
+
+{{EmbedLiveSample("Comparaison_entre_HTML_et_SVG", "100%", 800, "", "", "example-outcome-frame")}}
+
+### Exemple complet
+
+#### HTML
+
+```html
+<img id="clipped" src="https://mdn.mozillademos.org/files/12668/MDN.svg"
+ alt="MDN logo">
+<svg height="0" width="0">
+ <defs>
+ <clipPath id="cross">
+ <rect y="110" x="137" width="90" height="90"/>
+ <rect x="0" y="110" width="90" height="90"/>
+ <rect x="137" y="0" width="90" height="90"/>
+ <rect x="0" y="0" width="90" height="90"/>
+ </clipPath>
+ </defs>
+</svg>
+
+<select id="clipPath">
+ <option value="none">none</option>
+ <option value="circle(100px at 110px 100px)">circle</option>
+ <option value="url(#cross)" selected>cross</option>
+ <option value="inset(20px round 20px)">inset</option>
+ <option value="path('M 0 200 L 0,110 A 110,90 0,0,1 240,100 L 200 340 z')">path</option>
+</select>
+```
+
+#### CSS
+
+```css
+#clipped {
margin-bottom: 20px;
clip-path: url(#cross);
}
-</pre>
+```
-<pre class="brush: js hidden">var clipPathSelect = document.getElementById("clipPath");
+```js hidden
+var clipPathSelect = document.getElementById("clipPath");
clipPathSelect.addEventListener("change", function (evt) {
document.getElementById("clipped").style.clipPath = evt.target.value;
});
-</pre>
-
-<h4 id="Résultat">Résultat</h4>
-
-<p>{{EmbedLiveSample("Exemple_complet", 230, 250)}}</p>
-
-<h2 id="Spécifications">Spécifications</h2>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Spécification</th>
- <th scope="col">État</th>
- <th scope="col">Commentaires</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>{{SpecName("CSS Masks", "#the-clip-path", 'clip-path')}}</td>
- <td>{{Spec2('CSS Masks')}}</td>
- <td>Extension aux élément HTML. <code>clip-path</code> remplace la propriété {{cssxref("clip")}} désormais dépréciée.</td>
- </tr>
- <tr>
- <td>{{SpecName('SVG1.1', 'masking.html#ClipPathProperty', 'clip-path')}}</td>
- <td>{{Spec2('SVG1.1')}}</td>
- <td>Définition initiale (s'applique uniquement aux éléments SVG)</td>
- </tr>
- </tbody>
-</table>
-
-<p>{{cssinfo}}</p>
-
-<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>
-
-<p>{{Compat("css.properties.clip-path")}}</p>
-
-<h2 id="Voir_aussi">Voir aussi</h2>
-
-<ul>
- <li>{{cssxref("mask")}}</li>
- <li>{{cssxref("filter")}}</li>
- <li><a href="/fr/docs/Applying_SVG_effects_to_HTML_content">Appliquer des effets SVG sur du contenu HTML</a></li>
- <li><a href="https://hacks.mozilla.org/2017/06/css-shapes-clipping-and-masking/">Les formes CSS, le <em>clipping</em> et le <em>masking</em> : comment les utiliser (article en anglais)</a></li>
- <li>L'attribut SVG {{SVGAttr("clip-path")}}</li>
- <li>L'attribut SVG {{SVGAttr("clip-rule")}}</li>
-</ul>
+```
+
+#### Résultat
+
+{{EmbedLiveSample("Exemple_complet", 230, 250)}}
+
+## Spécifications
+
+| Spécification | État | Commentaires |
+| -------------------------------------------------------------------------------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------- |
+| {{SpecName("CSS Masks", "#the-clip-path", 'clip-path')}} | {{Spec2('CSS Masks')}} | Extension aux élément HTML. `clip-path` remplace la propriété {{cssxref("clip")}} désormais dépréciée. |
+| {{SpecName('SVG1.1', 'masking.html#ClipPathProperty', 'clip-path')}} | {{Spec2('SVG1.1')}} | Définition initiale (s'applique uniquement aux éléments SVG) |
+
+{{cssinfo}}
+
+## Compatibilité des navigateurs
+
+{{Compat("css.properties.clip-path")}}
+
+## Voir aussi
+
+- {{cssxref("mask")}}
+- {{cssxref("filter")}}
+- [Appliquer des effets SVG sur du contenu HTML](/fr/docs/Applying_SVG_effects_to_HTML_content)
+- [Les formes CSS, le _clipping_ et le _masking_ : comment les utiliser (article en anglais)](https://hacks.mozilla.org/2017/06/css-shapes-clipping-and-masking/)
+- L'attribut SVG {{SVGAttr("clip-path")}}
+- L'attribut SVG {{SVGAttr("clip-rule")}}