aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/css/@document/index.html
blob: 27549052b9bffbf8c8169bb37e1590ae4d7cfabf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
---
title: '@document'
slug: Web/CSS/@document
tags:
  - At-rule
  - CSS
  - Reference
  - Règle @
translation_of: Web/CSS/@document
---
<div>{{CSSRef}}{{SeeCompatTable}}</div>

<p>La <a href="/fr/docs/Web/CSS/R%C3%A8gles_@">règle @ CSS </a><strong><code>@document</code></strong> restreint les règles qu'elle contient en fonction de l'URL du document. Elle est principalement conçue pour les feuilles de style utilisateur, bien qu'elle puisse être également utilisée pour les feuilles de style d'auteur.</p>

<pre class="brush: css no-line-numbers">@document url("https://www.example.com/") {
  h1 {
    color: green;
  }
}</pre>

<ul>
</ul>

<h2 id="Syntaxe">Syntaxe</h2>

<p>Une règle <code>@document</code> peut définir une ou plusieurs fonctions de correspondance. Si l'une quelconque des règles s'applique à l'URL donnée, la règle prendra effet sur cette URL. Les fonctions disponibles sont :</p>

<ul>
 <li><code>url()</code>, qui établit une correspondance avec une URL exacte ;</li>
 <li><code>url-prefix()</code>, qui établit une correspondance si l'URL du document commence par la valeur fournie ;</li>
 <li><code>domain()</code>, qui établit une correspondance si l'URL du document se trouve sur le domaine indiqué (ou l'un de ses sous-domaines) ;</li>
 <li><code>media-document()</code> qui caractérise le type de document : vidéo, image, plugin, tout ;</li>
 <li><code>regexp()</code>, qui établit une correspondance avec si l'URL  du document vérifie une <a href="/fr-FR/docs/Web/JavaScript/Guide/Regular_Expressions">expression rationnelle</a>. L'expression doit correspondre à l'URL entière.</li>
</ul>

<p>Les valeurs fournies aux fonctions <code>url()</code>, <code>url-prefix()</code>, <code>media-document()</code> et <code>domain()</code> peuvent être éventuellement délimitées par des apostrophes, simples ou doubles. Les valeurs fournies à la fonction <code>regexp()</code> <em>doivent</em> être délimitées par des apostrophes.</p>

<p>Les valeurs échappées fournies à la fonction <code>regexp()</code> doivent être en outre échappées pour le CSS. Par exemple, un <code>.</code> (point) correspond à n'importe quel caractère dans les expressions régulières. Pour établir une correspondance avec un point littéral, vous aurez d'abord besoin de l'échapper en utilisant les règles des expressions rationnelles (en <code>\.</code>), puis d'échapper cette chaîne en utilisant les règles CSS (en <code>\\.</code>).</p>

<div class="note">
<p><strong>Note :</strong> Il existe une version préfixée de cette propriété pour Mozilla : <code>@-moz-document</code>. Cette propriété a été restreinte aux feuilles de style utilisateur ou à celles de l'agent utilisateur à partir de Firefox 59 afin d'expérimenter une méthode de réduction des risques d'injections CSS (cf. {{bug(1035091)}}).</p>
</div>

<h3 id="Syntaxe_formelle">Syntaxe formelle</h3>

<pre class="syntaxbox">{{csssyntax}}</pre>

<h2 id="Exemples">Exemples</h2>

<pre class="brush: css">@document url("http://www.w3.org/"),
               url-prefix("http://www.w3.org/Style/"),
               domain("mozilla.org"),
               media-document("video"),
               regexp("https:.*")
{
  /* Ces règles CSS s'appliquent à :
     - la page "http://www.w3.org/"
     - toute page dont l'URL commence par "http://www.w3.org/Style/"
     - toute page dont l'hôte de l'URL est "mozilla.org"
       ou finit par ".mozilla.org"
     - toute vidéo
     - toute page dont l'URL commence par "https:" */

  /* Rendre ces pages vraiment laides */
  body {
    color: purple;
    background: yellow;
  }
}
</pre>

<h2 id="Spécifications">Spécifications</h2>

<p><a href="https://www.w3.org/TR/css3-conditional/">Initialement</a> dans {{SpecName('CSS3 Conditional')}}, <code>@document</code> a <a href="http://www.w3.org/TR/2012/WD-css3-conditional-20121213/#changes">été repoussée</a> au niveau 4.</p>

<h2 id="Compatibilité_des_navigateurs">Compatibilité des navigateurs</h2>

<div class="hidden">Ce tableau de compatibilité a été généré à partir de données structurées. Si vous souhaitez contribuer à ces données, n'hésitez pas à envoyer une <em>pull request</em> sur <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a>.</div>

<p>{{Compat("css.at-rules.document")}}</p>

<h2 id="Voir_aussi">Voir aussi</h2>

<ul>
 <li><a href="http://lists.w3.org/Archives/Public/www-style/2004Aug/0135">Per-site user style sheet rules</a> sur la liste de diffusion www-style.</li>
</ul>