Forums d'assistance et de discussion sur les logiciels produits par Mozilla ou créés à partir des technologies Mozilla. Ce site ne dépend pas de la fondation Mozilla et est maintenu par un collectif de bénévoles.
HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
voila mon probleme en deux mots.
j'ai un calendrier sur mon site, je lui ai appliqué un style par defaut, et quand on survole un jour un evenement se produit. cet evenement est réalisé en javascript.
un lien est present sur certain jour, pour differencier ces jours, je leur applique un autre styles.
cela fonctionne sauf quand je passe dessus, c'est mon style par defaut se ré affiche, pas tres pratique ...
Il faut sauvegarder quelque part l'état initinal, d'une manière ou d'une autre. Plusieures solutions :
Modifier l'élement onmouseover dynamiquement au survol ou déjà à la base définir onmouseover différement. (la seconde solution est la plus simple de toutes)
Tester la présence de lien dans la case
Utiliser deux noms de classe différents pour un test simple.
Et pourquoi pas simplement une pseudoclasse :hover
D'ailleurs, si je peux me permettre, le plus simple et direct serait de changer l'attribut style et non l'attribut class.
S'il y a plusieurs styles qui sont changés ce n'est pas plus simple. C'est le principe de la séparation du style, c'est beaucoup plus facile à gérer/mettre à jour/modifier, il n'y a qu'à changer la css, pas directement le code html (ou php) ce qui est beaucoup plus fastidieux
j'ai essaye de modifier mon code comme tu l'avais marqué, mais cela ne fonctionne pas.
les jours sans liens :
ils ont un style par defaut et quand je les survole, l'image de survole s'affiche. le jour reviens a son état initial quand je ne le survole plus. (ca c ok)
les jours avec liens : (qui pointe vers une des news)
ils ont un style différent des jours sans liens (pour qu'ils soient correctement différenciable) et quand je les survole, l'image de survole (pour le moment, la meme que les jours sans liens) s'affiche.
mais ces jours reprennent l'état par defaut des jours sans liens. (ce n'est pas ok)
calimo a écrit :C'est le principe de la séparation du style, c'est beaucoup plus facile à gérer/mettre à jour/modifier, il n'y a qu'à changer la css, pas directement le code html (ou php) ce qui est beaucoup plus fastidieux
Eh bien, il ne nous reste plus qu'à attendre que l'on puisse définir plusieures classes de style.
Blustuff a écrit :Eh bien, il ne nous reste plus qu'à attendre que l'on puisse définir plusieures classes de style.
C'est à dire ?
Je ne sais pas si j'ai bien compris mais on peut définir class="style1 style2 style3", ça donne 3 classes sur un même objet... c'est ça qu'il te faut ?
comme ça tu remplaces juste la partie qu'il faut mais tu gardes aussi l'autre classe appliquée (linked_day). Il faut aussi qu'au départ tes liens aient les deux classes à la fois sinon ça marchera pas.
Anonymous a écrit :pourquoi ne pas faire comme calimo t'as suggéré : (tu enlèves ce qui est en rouge et tu rajoutes ce qui est en vert)
Il s'agit de la méthode que j'avais utilisé au départ, mais étant donné que ie ne gere pas l'attribut css :hover j'ai chercher une solution alternative. et calimo m'avait conseiller d'utiliser le javascript (sur ce post) d'ou mon choix d'avoir réalisé mon "rollover" e javascript ...
Anonymous a écrit :je te signale au passage que le fichier calendar_select_link.png n'est pas présent sur le serveur où se trouve l'exemple
GregK84 a écrit :
Il s'agit de la méthode que j'avais utilisé au départ, mais étant donné que ie ne gere pas l'attribut css :hover j'ai chercher une solution alternative. et calimo m'avait conseiller d'utiliser le javascript (sur ce post) d'ou mon choix d'avoir réalisé mon "rollover" e javascript ...
Si IE le gère mais pour les ancres (<a>) seulement ... donc désolé, c'est vrai que ça marche pas pour ton cas
Nouveau problème, tjrs au passage, tu ne switch pas les bonnes classes pour les td linked-day => ils deviennent tous des jours "normaux" après un passage de souris => mettre les bonnes classes dans les onmouseover et onmouseout