visibility
Masque un élément, mais laisse l’espace vide qu’il occupait.
- Valeur initiale
visible- Héritée
- Oui
- Animable
- oui, de façon abrupte (visible pendant toute la transition)
- S’applique à
- tous les éléments
- JavaScript
element.style.visibility = "hidden"
Exemple
#.tooltip {
visibility: hidden;
opacity: 0;
transition: opacity 0.2s, visibility 0.2s;
}
.trigger:hover .tooltip {
visibility: visible;
opacity: 1;
}<p class="trigger stage">Survolez ici avec le curseur
<span class="tooltip box" style="display: inline-grid; margin-left: 8px;">Infobulle</span>
</p>Définition et utilisation
#La propriété visibility affiche ou masque un élément sans changer la mise en page de la page. Un élément avec visibility: hidden devient invisible et ne peut plus être cliqué, mais son espace reste réservé. Cela le distingue de display: none, qui retire complètement l’élément.
Contrairement à la plupart des propriétés, visibility est héritée. L’enfant d’un parent masqué peut cependant définir visibility: visible et redevenir visible.
La propriété peut faire l’objet d’une transition en douceur, ce qui est utile pour les menus et les infobulles. On la combine le plus souvent avec opacity, pour que l’élément s’estompe d’abord, avant de devenir non cliquable.
Syntaxe
#visibility: visible | hidden | collapse;Valeurs
#Valeurs en pratique
#visible
.demo { visibility: visible; }collapse
hidden..demo { visibility: collapse; }Compatibilité des navigateurs
#Largement disponible
Fonctionne dans tous les navigateurs modernes, y compris sur mobile. Vous pouvez l’utiliser sans crainte.
- Chrome
- Edge
- Firefox
- Safari
Bonnes pratiques
#- Un élément masqué avec
visibility: hiddenoccupe toujours de la place. S’il doit disparaître avec l’espace qu’il occupait, utilisezdisplay: none. - Les lecteurs d’écran ignorent les éléments avec
visibility: hidden, tout comme ceux avecdisplay: none.
Entrées associées
#- display vs visibility vs opacitydisplay: none retire l’élément de la mise en page, visibility: hidden le cache mais garde sa place, et opacity: 0 le rend transparent tout en le laissant cliquable.
- displayDétermine comment un élément se comporte dans la mise en page de la page et comment il organise ses enfants.
Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.