Bonjour,
J'ai une base de données d'oeuvres d'art.
Dans mon appli, j'ai une page PHP qui affiche une Table contenant les caractéristiques de chacune des oeuvres (avec une pagination limitant à 100 maxi le nombre de lignes par écran)..
Chaque ligne de cette table correspond à un record de la base et affiche une vingtaine de champs : nom et prenom de l'artiste, date, dimensions, techniques, etc... L'un de ces champs (dans la table, c'est une cell TD) contient une VIGNETTE JPG figurant l'oeuvre correspondante.
L'utilisateur peut cliquer sur l'une quelconque de ces vignettes afin d'obtenir l'affichage de l'image originale de l'oeuvre, en grand format.
Il y a des milliers d'oeuvres, les images sources sont lourdes (jusqu'à 5Mo), les vignettes font quelques ko. Donc lors du clic, je fais un accès serveur, récupère la "BIG Image" et ré-affiche ma table en superposant par dessus un DIV contenant le ZOOM. Et c'est là où se pose mon problème.
J'aimerais en effet que lors de ce ré-affichage, il se passe 2 choses :
1. Que la table sous-jacente s'affiche (se positionne) sur la ligne qui a été cliquée : je fais ça très bien grâce à une ancre.
2. Idéalement, que le DIV contenant le zoom s'affiche RELATIVEMENT à cette ligne (juste en dessous) ET se SUPERPOSE à la table.
Et là, je rame :
- Si j'insère le DIV-zoom dans le flot de la table en lui associant un "position:relative"... il s'affiche en libèrant toute la place nécessaire entre la ligne concernée et la ligne suivante, dans le même plan, sans tenir compte de ma commande de superposition (z-index:1),
- Si je créee mon DIV à la fin de la table et le positionne en "position:absolute", il s'affiche en se superposant correctement à la table mais... je n'arrive pas à l'associer verticalement à la ligne concernée...
Avez-vous des suggestions ?
Merci pour votre aide !
Partager