55 votes

tr:hover ne fonctionne pas

J'essaie de mettre en évidence (changer la couleur de fond) la ligne entière lorsque la souris passe sur une ligne du tableau. J'ai cherché sur le Net et cela devrait fonctionner, mais ce n'est pas le cas. Je l'affiche sur Chrome.

<table class="list1">
<tr>
   <td>1</td><td>a</td>
</tr>
<tr>
   <td>2</td><td>b</td>
</tr>
<tr>
   <td>3</td><td>c</td>
</tr>
</table>

mon css :

.list1 tr:hover{
background-color:#fefefe;
}

Le css correct devrait être :

.list1 tr:hover td{
background-color:#fefefe;
}

//--this css for the td keeps overriding the one i showed earlier
.list1 td{
background-color:#ccc000;
}

Merci pour les commentaires !

136voto

David Peters Points 297

Votre meilleure chance est d'utiliser

table.YourClass tr:hover td {
background-color: #FEFEFE;
}

Les rangées ne prennent pas entièrement en charge la couleur d'arrière-plan, mais les cellules le font. L'utilisation de la combinaison de :hover et de l'élément enfant donnera les résultats dont vous avez besoin.

6voto

Yvette Points 61

Vous devez utiliser <!DOCTYPE html> pour que la fonction :hover fonctionne avec autre chose que la fonction <a> étiquette. Essayez de l'ajouter en haut de votre HTML.

6voto

Shawn Points 204

Intente

.list1 tr:hover td{
    background-color:#fefefe;
}

3voto

Sanooj Points 2052

tr:hover ne fonctionne pas dans les anciens navigateurs.

Vous pouvez utiliser jQuery pour cela :

.tr-hover
{  
  background-color:#fefefe;
}

$('.list1 tr').hover(function()
{
    $(this).addClass('tr-hover');
},function()
{
    $(this).removeClass('tr-hover');
});

1voto

JNDPNT Points 3496

Cela fonctionne bien pour moi... Le site tr:hover devrait fonctionner. Probablement que ça ne marchera pas parce que :

  1. La couleur de fond que vous avez définie est très claire. Vous ne l'utilisez pas sur un fond blanc, n'est-ce pas ?

  2. Votre <td> Les balises ne sont pas fermées correctement.

Veuillez noter que le survol d'un <tr> ne fonctionnera pas dans les anciens navigateurs.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X