/ /: la pseudo-classe de survol de CSS ne fonctionne pas dans IE7 - css, internet-explorer-7, internet-explorer, css-selectors

: la pseudo-classe de survol de CSS ne fonctionne pas dans IE7 - css, internet-explorer-7, internet-explorer, css-selectors

J'ai un problème avec le :hover pseudo-classe de CSS.

Je l'utilise comme

tr.lightRow:hover {
color:red
}

Cela fonctionne dans Safari et Firefox, mais pas dans IE7. Aidez-moi, s'il vous plaît.

Réponses:

5 pour la réponse № 1

IE7 prend en charge: survolez, au moins en mode standard. Il ne peut pas en mode quirks.


4 pour la réponse № 2

IE a une histoire de mauvais support CSS. À l'origine seulement a balises prises en charge :hover. Et aussi vous ne pouviez pas avoir quelque chose comme a:hover span pour indiquer que seul le span la balise devrait changer lors du survol du parent a.

Si tu veux correct :hover dans toutes les versions d’IE, vous devez utiliser javascript et onmouseover/onmouseout.

Cela aide également si vous utilisez un doctype xhtml, pour activer le mode standard.


3 pour la réponse № 3

IE 6 ne supporte que le :hover pseudo classe sur les liens, mais IE 7 le prend en charge sur la plupart des éléments.

Comme David l'a mentionné, cela pourrait ne pas fonctionner avec des bizarreriesmode. La raison serait alors que IE revient généralement à quelque chose de plus proche de IE 4 en mode quirks, permettant de nombreuses fonctionnalités spécifiques à IE et supprimant plusieurs fonctionnalités conformes aux normes.

Si tu veux le :hover fonctionnalité sur un élément de bloc et la prise en charge de IE 6, vous pouvez utiliser un élément de lien et en faire un élément de bloc à l'aide de CSS. Notez qu'un lien uniquement peut contenir des éléments en ligne (par exemple, aucun divs) donc si vous voulez bloquer des éléments à l’intérieur du lien, vous devez également définir cela à l’aide de CSS:

CSS:

.hoverlink { display: block; }
.hoverlink:hover { background: #eee; }
.hoverlink .item { display: block; }

HTML:

<a href="..." class="hoverlink">
<span class="item">Line 1</span>
<span class="item">Line 2</span>
<span class="item">Line 3</span>
</a>

(Vous pouvez également envisager l'impact sur les moteurs de recherche en utilisant la technique. Un lien a un meilleur impact s'il contient simplement le texte décrivant le lien).


0 pour la réponse № 4

Je me suis heurté à ce problème plusieurs fois. Jetez un coup d’œil au lien suivant.

http://www.bernzilla.com/item.php?id=762

"Si vous souhaitez une prise en charge pour: survolez tous les éléments et pas seulement la balise <a>, assurez-vous que vous utilisez un DOCTYPE strict, de sorte que IE7 ne passe pas en mode quirks."


0 pour la réponse № 5

: le survol n’est pas pris en charge par tous les éléments, par exemple. ça marche <a> mais se casse <div> Autant que je sache