Soucis de OnMouseOver avec CSS

Eléphant du PHP | 73 Messages

18 juil. 2011, 16:03

Bonjour,

j'ai un léger soucis dans mes pages en voulant changer le design.

avant j'avais un :
<tr onmouseover="this.bgColor=\'#eda135\';" onmouseout="this.bgColor=\'#e8e8e8\';">
qui fonctionnait très bien, c'est à dire que lorsque mon curseur passait sur une ligne, la ligne était en surbrillance.

là j'ai changé de CSS complet sur mon site, et rajouté des class dans mes TR, maintenant j'ai :
<tr class="tkt_sectionHeader2" onmouseover="this.bgColor=\'#eda135\';" onmouseout="this.bgColor=\'#e8e8e8\';">
qui ne fonctionne pas. la classe CSS semble "écraser" mes commandes JS ?
y-at"il un autre moyen de procéder ? qu'est-ce qui ne fonctionne pas ?
la voici au cas ou :
.tkt_sectionHeader2 {
FONT-SIZE: 11px; COLOR: #003366; HEIGHT: 20px; BACKGROUND-COLOR: #f2f5fa; TEXT-ALIGN: left
j'ai testé plusieurs choses (retirer les couleurs de la classe etc etc) mais rien n'y fait.

help !

merci de votre aide

PS : j'ai testé avec un truc du genre qui ne fonctionne pas non plus :

<tr OnMouseOver="this.tkt_hover=\'#eda135\';" OnMouseOut="\'this.tkt_lightcell\';"> (ou dans mon hover j'ai un changement de bgcolor=

Eléphant du PHP | 73 Messages

18 juil. 2011, 16:18

nm, j'ai résolu une partie de mon problème en remplacant this.bgcolor par style.backgroundColor (allez savoir.. quelle est la différence ?)

devlop78
Invité n'ayant pas de compte PHPfrance

18 juil. 2011, 21:05

Bah, je vais peut-être dire une bêtise, mais this.bgColor agit sur l'attribut bgColor de l'entitié TR alors que this.style.backgroundColor agit sur son attribut style. Et effectivement, il peut y avoir des conflits entre un attribut HTML qui a son équivalence en CSS. De façon général, il vaut mieux ne pas utiliser d'attribut HTML pour faire de la mise en forme, et d'utiliser CSS, c'est à dire style. Ensuite, avec l'expérience que j'ai, je peux te dire, sauf erreur de ma part, que les propriétés présent dans l'attribut style sont prioritaires à ceux d'une balise STYLE ou fichier CSS extérieur, sauf (éventuellement) si ces-derniers précisent !important par exemple. Eux-mêmes gèrent des priorités différentes, par défaut la dernière déclaration est utilisée, mais plus subtil est la différence entre un div.maclasse et un .maclasse ;)