aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/api/htmlelement/hidden/index.md
blob: 1937f8240a547e6cbd726bfac209091cacf5df7d (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
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
---
title: HTMLElement.hidden
slug: Web/API/HTMLElement/hidden
translation_of: Web/API/HTMLElement/hidden
---
{{ APIRef("HTML DOM") }}

La propriété **`hidden`** de l'{{domxref("HTMLElement")}} est un {{jsxref("Boolean")}} qui vaut `true` si l'élément est caché, sinon sa valeur est `false`. Cela est très différent de l'utilisation de la propriété CSS {{cssxref("display")}} pour contrôler la visibilité d'un élément.

La propriété `hidden` s'applique à tous les modes de présentation et ne doit pas être utilisée pour cacher du contenu qui est destiné à être directement accessible par l'utilisateur.

Des cas d'utilisation appropriés de `hidden` comprennent :

- du contenu qui n'est pas encore pertinent mais qui peut être nécessaire ultérieurement ;
- du contenu qui était nécessaire antérieurement mais qui ne l'est plus ;
- du contenu qui est réutilisé par d'autres parties de la page à la manière d'un modèle ;
- la création d'un canevas hors écran comme tampon de dessin.

Des cas inappropriés d'utilisation comprennent :

- le fait de cacher des panneaux dans une boîte de dialogue à onglets ;
- le fait de cacher du contenu dans une présentation tout en ayant l'intention qu'il soit visible dans d'autres.

> **Note :** Des éléments qui ne sont pas `hidden` ne doivent pas faire référence à des éléments qui le sont.

## Syntaxe

    estCaché = HTMLElement.hidden;

    HTMLElement.hidden = true | false;

### Valeur

Un Boolean qui est `true` si l'élément est caché à la vue ; sinon, la valeur est `false`.

## Exemple

Voici un exemple où un bloc caché est utilisé pour contenir un message de remerciement qui est affiché après qu'un utilisateur a accepté une demande inhabituelle.

### JavaScript

```js
document.getElementById("boutonOk")
        .addEventListener("click", function() {
  document.getElementById("bienvenue").hidden = true;
  document.getElementById("impressionnant").hidden = false;
}, false);
```

Ce code installe une gestionnaire pour le bouton "OK" du panneau de bienvenue, gestionnaire qui cache le panneau de bienvenue et rend le panneau de suite — ayant le curieux nom d'"impressionnant" — visible à sa place.

### HTML

Le code HTML pour les deux boîtes est montré ci-dessous.

#### Le panneau bienvenue

```html
<div id="bienvenue" class="panneau">
  <h1>Bienvenue à Machin.com !</h1>
  <p>En cliquant sur "OK", vous acceptez d'être impressionnant chaque jour !</p>
  <button class="bouton" id="boutonOk">OK</button>
</div>
```

Ce code HTML crée un panneau (dans un bloc {{HTMLElement("div")}}) qui accueille les utilisateurs sur un site et leur dit ce qu'ils acceptent en cliquant sur le bouton OK.

#### Le panneau de suite

Une fois que l'utilisateur a cliqué sur le bouton "OK" dans le panneau d'accueil, le code JavaScript échange les deux panneaux en changeant leurs valeurs respectives pour `hidden`. Le panneau de suite ressemble à ce qui suit en HTML:

```html
<div id="impressionnant" class="panneau" hidden>
  <h1>Merci !</h1>
  <p>Merci <strong>vraiment</strong> beaucoup d'avoir accepté d'être
  impressionnant aujourd'hui ! Maintenant, sortez et faites des choses impressionnantes
  d'une façon impressionnante pour rendre le monde plus impressionnant !</p>
</div>
```

### CSS

Le contenu est mis en forme en utilisant le CSS ci-dessous.

```css
.panneau {
  font: 16px "Open Sans", Helvetica, Arial, sans-serif;
  border: 1px solid #22d;
  padding: 12px;
  width: 500px;
  text-align: center;
}

.bouton {
  font: 22px "Open Sans", Helvetica, Arial, sans-serif;
  padding: 5px 36px;
}

h1 {
  margin-top: 0;
  font-size: 175%;
}
```

### Résultat

{{ EmbedLiveSample('Exemple', 560, 200) }}

## Spécifications

| Spécification                                                                                                    | Statut                           | Commentaire |
| ---------------------------------------------------------------------------------------------------------------- | -------------------------------- | ----------- |
| {{SpecName('HTML WHATWG', "interaction.html#dom-hidden", "HTMLElement.hidden")}}     | {{Spec2('HTML WHATWG')}} |             |
| {{SpecName('HTML5.1', "editing.html#the-hidden-attribute", "HTMLElement.hidden")}}     | {{Spec2('HTML5.1')}}     |             |
| {{SpecName('HTML5 W3C', "editing.html#the-hidden-attribute", "HTMLElement.hidden")}} | {{Spec2('HTML5 W3C')}}     |             |

## Compatibilité des navigateurs

{{Compat("api.HTMLElement.hidden")}}

## Voir aussi

- {{domxref("Element.hidden")}}
- {{cssxref("display")}}