Comment rendre visible une image cachée au survol d'un lien ?

Comment rendre visible une image cachée au survol d'un lien ? - HTML/CSS - Programmation

Marsh Posté le 07-10-2010 à 15:29:59    

Salut à tous,
 
j'essaie de faire court parce que je sais parfaitement pour les gens calés à quel point ce genre de topics peuvent devenir lourds.
 
1-Ca fait deux jours que je cherche, que je fais forums et tutos
2-Je suis une bille en HTML, en CSS c'est pas encore ça, et j'ai jamais touché au javascript
 
La page est disponible ici : http://www.johanmosse.fr. Le index.html et style.css sont à la racine du site.
 
J'ai plein d'autres problèmes, mais je travaille dessus et pense pouvoir les régler (@font-face, dégradé du haut qui bugge) mais j'ai vraiment besoin d'aide pour faire en sorte qu'au survol du bouton "publication expérimentale intitulée "The Sample"", l'image en fond devienne visible alors qu'elle serait masquée par défaut.
 
J'suis tombé sur des codes en javascript que j'ai tenté de bidouiller sans succès (ni sans trop comprendre).
 
Qu'en pensez-vous? Comment y parvenir?
 
Merci d'avance, et surtout souvenez vous d'expliquer comme à un débile, parce que je débute vraiment.
 
Johan

Reply

Marsh Posté le 07-10-2010 à 15:29:59   

Reply

Marsh Posté le 07-10-2010 à 17:32:42    

en jouant sur le z-index de l'image, ça pourrait pas le faire?


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 07-10-2010 à 18:58:56    

Tu mets l'image dans un lien, caché par défaut.
Mais au :hover, tu l'affiches
Ceci, mais avec une image
http://www.commentcamarche.net/faq [...] javascript

Reply

Marsh Posté le 08-10-2010 à 09:46:24    

Rien de plus facile :

Code :
  1. <p><span id="test1" style="position:absolute;"></span><a href="#" OnMouseOver="javascript:document.getElementById('test1').innerHTML = '<img src=http://membres.multimania.fr/yarflam/Jquery/ex3.2.jpg width=500 height=500></img>';">monlien</a>


 
Depuis que je suis sur ce forum, je n'ai que des solutions avec Div ou Span, pourquoi seulement moi ?
 
Pour t'expliquer le principe momocabries :
-J'ai initialisé un span, c'est une syntaxe permettant d'être modifier. Comme un Div.
-Tu peux observer style="position:absolute;" ce code permet de mettre l'image en avant (3D).
-J'ai initialisé un lien <a href=#link>#link</a>
-J'ai ajouté un OnMouseOver pour permettre d'activer du javascript au passage de la souris
-Ce code : document.getElementById('test1').innerHTML permet de modifier le span
-Puis on initialise l'image pour le span


Message édité par cetplus le 08-10-2010 à 09:56:56
Reply

Marsh Posté le 08-10-2010 à 10:52:41    

Salut, merci pour votre aide pour commencer.
 
@rufo : ca peut sûrement marcher, le problème étant de savoir comment dire au z-index d'un autre div précis de se modifier au survol d'un lien particulier dans la page.
 
@DavidBoring : je comprend le code, mais je ne sais pas ou modifier le CSS pour qu'à la place d'un encart avec du texte, cela soit une image qui s'affiche... Tu saurais m'aider?
 
@cetplus : ca marche quand je copie ce code, le problème étant qu'au moment ou la souris n'est plus en survol, l'image reste, et que dans le code j'ai du mal à comprendre où je dois donner les informations sur la position précise de l'image à afficher...
 
Merci en tout cas pour ces pistes à explorer :)

Reply

Marsh Posté le 08-10-2010 à 11:01:51    

Tu remplaces le span par une image

Code :
  1. <p> Voici un lien vers <a class="info" href="http://commentcamarche.net">CCM<img src="path/to/img.png" width="426" height="282" alt="description" /></a>.
  2. </p>


 
Et dans la css, tu mets img à la place de span


Message édité par David Boring le 08-10-2010 à 11:02:51
Reply

Marsh Posté le 08-10-2010 à 11:02:16    

momocabries a écrit :

Salut, merci pour votre aide pour commencer.
 
@rufo : ca peut sûrement marcher, le problème étant de savoir comment dire au z-index d'un autre div précis de se modifier au survol d'un lien particulier dans la page.
 
[...]


Via du javascript par ex ;)


Message édité par rufo le 08-10-2010 à 11:02:46

---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta
Reply

Marsh Posté le 08-10-2010 à 11:36:27    

@rufo : Oui mais je n'y connais rien ! :)
 
@David Boring : Merci, ta solution marche du tonerre, à ceci près que l'image passe nécessairement devant le texte, même lorsque j'ajoute un z-index:-20; dans le CSS "a.info:hover img"... Je la voudrais en arrière-plan, c'est jouable tu crois?

Reply

Marsh Posté le 08-10-2010 à 11:50:52    

Alors, tu mets le texte du lien dans un span, avec position:relative, z-index:2
Et l'image avec un z-index de 1

Reply

Marsh Posté le 08-10-2010 à 12:13:51    

Ca marche. Tu es un génie. Merci :D

Reply

Marsh Posté le 08-10-2010 à 12:13:51   

Reply

Marsh Posté le 08-10-2010 à 12:24:27    

Dernière question, vraiment pour chipoter. Je suis sur Firefox et quand je clique sur le lien-test pour l'image sur http://www.johanmosse.fr on voit les pointillés qui signalent le contour du bouton (et qui prennent aussi l'image).
 
Déjà que ces pointillés sont horribles... Y'a une astuce ?
 
C'est juste pour être relou :)


Message édité par momocabries le 08-10-2010 à 12:24:54
Reply

Marsh Posté le 08-10-2010 à 12:29:48    

Tu dois les laisser, cela aide les personnes handicapées à voir le focus.
Mais bon, si vraiment, tu veux les retirer, c'est a {outline:0}

Reply

Marsh Posté le 08-10-2010 à 15:36:59    

J'ignorais... Merci beaucoup !

Reply

Marsh Posté le 08-10-2010 à 15:51:28    

Sinon tu peux utiliser cette technique:
 
<a href="en_index.php" >
<img src="images/image-blanche.jpg"  onmouseover="this.src='images/image-bleu.jpg'" onmouseout="this.src='images/image-blanche.jpg'"/>
</a>
 
Cela va afficher une image blanche et quand la souris ira dessus, affichera une image bleu qui sera a son tour remplacé de nouveau par la blanche quand la souris sortira de l'image.
 
Bien sur, tu remplace image-blanc.jpg et image-bleu.jpg par le nom de tes images

Reply

Marsh Posté le 08-10-2010 à 15:57:55    

Oui enfin employer du js quand on peut le fair en css, c'est, je trouve, stupide comme idée.
Surtout une saloperie de code comme tu le proposes. Nous sommes en 2010, on ne doit plus voir de javascript mixé dans l'html, c'est à BANNIR

Reply

Marsh Posté le 09-10-2010 à 22:51:55    

@David Boring = Et pourquoi le javascript n'aurait pas sa place dans une syntaxe HTML ? Ça réduit considérablement le temps de programmation.

Reply

Marsh Posté le 10-10-2010 à 07:59:45    

Parce qu'ils est plus facile d'aller modifier 1 fichier js qui lui t'initialise ta vue (HTML) que d'avoir du JS partout dans le HTML et te perdre dans tous les sens.


---------------
Blablaté par Harko
Reply

Marsh Posté le 10-10-2010 à 09:18:54    

C'est pas faux :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed