Maison > interface Web > tutoriel CSS > Comment afficher un élément enfant masqué en HTML lorsque le parent est masqué ?

Comment afficher un élément enfant masqué en HTML lorsque le parent est masqué ?

Susan Sarandon
Libérer: 2024-11-03 04:58:02
original
738 Les gens l'ont consulté

How to Display a Hidden Child Element in HTML When the Parent is Hidden?

Affichage des éléments enfants cachés

En HTML, définir la propriété d'affichage d'un élément sur "aucun" masque efficacement cet élément de la vue. Cependant, que se passe-t-il lorsqu'un élément enfant au sein d'un élément parent masqué doit être affiché ?

Requête originale

Un utilisateur a rencontré ce problème alors qu'il travaillait avec des listes non ordonnées imbriquées. Ils souhaitaient afficher un message d'erreur de validation dans un élément de liste enfant, même si l'élément de liste parent était masqué. La sagesse conventionnelle suggère que cela pourrait ne pas être possible en raison du manque de contexte pour l'élément enfant lorsque son parent n'était pas visible.

Solution

Bien que ce ne soit pas possible pour afficher directement un élément enfant lorsque son élément parent est display : aucun, il existe une approche alternative qui offre des fonctionnalités similaires :

Utiliser la visibilité

Au lieu de définir l'affichage propriété sur "aucun" pour l'élément parent, définissez la propriété de visibilité sur "caché". Cela supprimera l'élément parent de la vue tout en permettant à ses éléments enfants d'être affichés.

Exemple CSS :

<code class="css">.hide {
    visibility: hidden;
}

.reshow {
    visibility: visible;
    position: fixed;
    top: 0;
    left: 0;
}</code>
Copier après la connexion

Exemple de balisage :

<code class="html"><ul>
    <li>One</li>
    <li class="hide">
        Two
        <ul>
            <li class="reshow">Re Show Me</li>
            <li>Inner 2</li>
        </ul>
    </li>
    <li>Three</li>
</ul></code>
Copier après la connexion

En utilisant cette méthode, l'élément parent restera caché, mais l'élément enfant avec la classe "reshow" sera affiché et positionné en haut à gauche de l'écran.

Considérations supplémentaires

  • L'élément parent occupera toujours de l'espace dans la mise en page, même s'il est masqué. Cela pourrait affecter l'apparence générale de la page.
  • Cette approche ne fonctionne que si l'élément parent est positionné de manière absolue ou a une hauteur et une largeur spécifiques.
  • Il n'est pas recommandé d'utiliser cette technique de manière approfondie, car cela peut entraîner de la confusion et des problèmes d'accessibilité.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal