Maison > interface Web > tutoriel CSS > Quelle est la propriété de visibilité dans CSS? En quoi est-ce que cela diffère de l'affichage: aucun?

Quelle est la propriété de visibilité dans CSS? En quoi est-ce que cela diffère de l'affichage: aucun?

James Robert Taylor
Libérer: 2025-03-19 15:24:24
original
231 Les gens l'ont consulté

Quelle est la propriété de visibilité dans CSS? En quoi est-ce que cela diffère de l'affichage: aucun?

La propriété visibility dans CSS est utilisée pour contrôler si un élément est visible sur la page Web. Il a plusieurs valeurs possibles, notamment visible , hidden , collapse et inherit . Lorsque visibility d'un élément est définie sur hidden , l'élément n'est pas visible pour l'utilisateur mais occupe toujours un espace dans la disposition de la page. Cela signifie que d'autres éléments ne se déplaceront pas pour remplir l'espace où se trouve l'élément caché.

En revanche, display: none ne supprime entièrement l'élément de la mise en page. Lorsqu'un élément est défini pour display: none , il est complètement masqué et n'occupe aucun espace dans la disposition. D'autres éléments de la page se déplaceront pour remplir l'espace que l'élément supprimé était précédemment occupé. Cette différence fondamentale dans la façon dont visibility: hidden et display: none n'affecte la disposition est cruciale pour décider lequel utiliser dans différents scénarios.

Quels effets le réglage de la visibilité sur «cachée» a-t-il sur la disposition d'un élément?

When you set an element's visibility to hidden , it will not be visible to the user, but it will still affect the layout of the page. L'espace que l'élément occupe dans la disposition reste réservé. Cela signifie:

  • L'élément conserve ses dimensions (largeur, hauteur, marges, etc.) et continue d'influencer le positionnement d'autres éléments qui l'entourent.
  • Si l'élément caché est un élément au niveau du bloc, il créera toujours une nouvelle ligne dans la disposition.
  • Tous les éléments enfants de l'élément caché seront également cachés, mais ils occuperont également leurs espaces respectifs dans la disposition.

Par exemple, si vous avez un paragraphe de texte et une image côte à côte, et que vous définissez la visibilité de l'image sur hidden , le paragraphe ne se déplacera pas vers la gauche pour occuper l'espace que l'image occupe. La disposition restera inchangée visuellement, à l'exception de l'absence de l'image.

Comment pouvez-vous basculer la visibilité d'un élément à l'aide d'animations CSS?

Pour basculer la visibilité d'un élément à l'aide d'animations CSS, vous pouvez utiliser la propriété animation avec les images clés pour passer entre visibility: hidden et visibility: visible . Voici une approche étape par étape:

  1. Définissez les images clés:
    Vous devez créer des images clés qui définissent comment la visibilité de l'élément change dans le temps. Vous pouvez également animer d'autres propriétés comme opacity pour les transitions plus lisses.

     <code class="css">@keyframes fadeInOut { 0%, 100% { visibility: hidden; opacity: 0; } 50% { visibility: visible; opacity: 1; } }</code>
    Copier après la connexion
  2. Appliquer l'animation:
    Appliquez l'animation à l'élément que vous souhaitez basculer. Vous pouvez contrôler la durée et d'autres fonctions de synchronisation selon les besoins.

     <code class="css">.toggle-visibility { animation: fadeInOut 2s infinite; }</code>
    Copier après la connexion

Dans cet exemple, l'animation fadeInOut fera que l'élément se fonde dans et hors de 2 secondes, basculiers, basculant sa visibilité. Vous pouvez ajuster le calendrier, le nombre d'itération et d'autres propriétés pour répondre à vos besoins spécifiques.

Dans quels scénarios choisisriez-vous d'utiliser «Visibilité: Hidden« Over »Affichage: Aucun»?

Choisir entre visibility: hidden et display: none dépend de vos exigences spécifiques sur la façon dont la disposition doit se comporter. Voici quelques scénarios où visibility: hidden pourrait être préféré à display: none :

  • Préservation de la mise en page: si vous avez besoin de masquer un élément mais que vous souhaitez maintenir la mise en page comme si l'élément était toujours là, utilisez visibility: hidden . Ceci est utile pour créer des espaces réservés ou maintenir une structure cohérente sur la page, en particulier dans les conceptions réactives.
  • Amélioration progressive: dans les cas où vous implémentez une amélioration progressive, vous pouvez commencer par le contenu caché puis révélé avec des animations JavaScript ou CSS. Utilisation visibility: hidden permet au contenu d'être initialement masqué mais toujours accessible et à affectation.
  • Concernant l'accessibilité: Si vous souhaitez masquer le contenu mais que vous le permettez d'être accessible par les lecteurs d'écran (à des fins d'accessibilité), visibility: hidden peut être bénéfique. Le contenu est caché visuellement mais fait toujours partie du flux de documents et peut être lu par les technologies d'assistance.
  • Considérations de performances: dans les scénarios où basculer fréquemment la visibilité, en utilisant visibility: hidden peut être plus performant car il ne nécessite pas que le navigateur recalcule la disposition à chaque fois que la visibilité change, contrairement à display: none .

En résumé, visibility: hidden est préférable lorsque vous devez masquer un élément tout en gardant son influence sur la disposition de la page intacte, tandis que display: none doit être utilisé lorsque vous souhaitez supprimer entièrement l'élément de la disposition.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal