Maison > interface Web > tutoriel CSS > le corps du texte

Comment résoudre le bug de Webkit avec :hover et plusieurs sélecteurs de frères et sœurs adjacents ?

DDD
Libérer: 2024-10-23 22:50:29
original
135 Les gens l'ont consulté

How to Resolve Webkit Bug with :hover and Multiple Adjacent-Sibling Selectors?

Bogue du Webkit avec :hover et plusieurs sélecteurs de frères et sœurs adjacents

Dans les navigateurs tels que Safari et Chrome, la pseudo-classe :hover fonctionne correctement avec les sélecteurs de frères et sœurs adjacents, tels que a:hover div. Cependant, un bug survient lorsque plusieurs sélecteurs de frères et sœurs adjacents sont utilisés, comme dans div:hover a div.

Le problème

Dans les navigateurs Webkit, le div:hover a div selector a mal fonctionné, échouant pour appliquer un style au

élément comme prévu. Paradoxalement, l'ajout d'un combinateur frère, tel que div:hover ~ div, avec ou sans style, a inexplicablement résolu le problème.

Solution

Pour contourner ce bug du Webkit, vous pouvez utiliser une technique impliquant animation sur l'élément corps. En attachant une classe CSS animée à l'élément body avec une animation vide, vous pouvez efficacement inciter le navigateur à résoudre le bug :

<code class="css">body {
  -webkit-animation: bugfix infinite 1s;
}

@-webkit-keyframes bugfix {
  from {
    padding: 0;
  }
  to {
    padding: 0;
  }
}</code>
Copier après la connexion

Cette solution fonctionne en déclenchant un nouveau rendu de la page, ce qui force Webkit pour résoudre correctement les sélecteurs frères et sœurs. Vous pouvez voir un exemple de cette solution de contournement en action sur JS Fiddle : http://jsfiddle.net/jalbertbowdenii/ds2yY/1/.

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
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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!