Equivalent du 'frameset' en CSS
Publié : 20 mars 2007, 19:27
Bonjour,
Je cherche à reproduire un 'frameset' en CSS.
Je sais le faire avec peu de texte à afficher mais lorsqu'il y a l'équivalent de 10 pages HTML par exemple, est ce possible ?
Je m'explique : j'ai mis les 12 liens de ma page principale en haut de page. (au préalable, j'ai divisé cette page en 3 DIV : header (10 % de la hauteur de la page), content (90 % de la hauteur) et enfin footer (pour le copyright en bas de page).
Le menu est dans le header. L'affichage est dans le content.
Ce que je souhaite : lorsqu'on clique sur un lien (en haut), il faudrait que le texte s'affiche en bas (dans le "content").
Je l'ai fait avec le CSS et le DOM en utilisant "visibility" => "hidden" et "visible" en fonction du click (avec un peu de javascript sur le lien et get
ElementById) et ca marche très bien.
Mais il faut que le texte à afficher se trouve déjà sur la page principale (et non pas à l'exterieur de la page comme cela serait possible avec l'ancien systeme des frames et frameset ; avec l'ancien systeme, j'aurai eu un frame en haut pour le menu et un frame en bas pour afficher chacune des 10 pages en fonction du choix cliqué).
Donc si je veux le texte de 10 liens donc de 10 pages html, je dois tout mettre sur ma page principale et je vais me retrouver avec une page principale aussi lourde que 10 pages html !
Bien sur, je ne veux pas qu'il y ait un effet de "reload" (il n'y en a pas du tout avec "hidden" et "getElementById" qui permettent une parfaite fluidité d'affichage ).
Je crois savoir (d'apres ce que j'ai lu dans les revues d'informatique) que c'est possible avec AJAX (et "HTTPrequest" je crois) mais je ne connais pas du tout cette pratique.
J'ai un peu lu dessus, mais il faut me semble t il une API coté serveur .. donc je prefere attendre pour l'instant, avant d'utiliser cette pratique.
Quelqu'un a-t-il une solution ?
(NB : j'ai XP avec FF 2.0 et IE).
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.2) Gecko/20070219 Firefox/2.0.0.2
Je cherche à reproduire un 'frameset' en CSS.
Je sais le faire avec peu de texte à afficher mais lorsqu'il y a l'équivalent de 10 pages HTML par exemple, est ce possible ?
Je m'explique : j'ai mis les 12 liens de ma page principale en haut de page. (au préalable, j'ai divisé cette page en 3 DIV : header (10 % de la hauteur de la page), content (90 % de la hauteur) et enfin footer (pour le copyright en bas de page).
Le menu est dans le header. L'affichage est dans le content.
Ce que je souhaite : lorsqu'on clique sur un lien (en haut), il faudrait que le texte s'affiche en bas (dans le "content").
Je l'ai fait avec le CSS et le DOM en utilisant "visibility" => "hidden" et "visible" en fonction du click (avec un peu de javascript sur le lien et get
ElementById) et ca marche très bien.
Mais il faut que le texte à afficher se trouve déjà sur la page principale (et non pas à l'exterieur de la page comme cela serait possible avec l'ancien systeme des frames et frameset ; avec l'ancien systeme, j'aurai eu un frame en haut pour le menu et un frame en bas pour afficher chacune des 10 pages en fonction du choix cliqué).
Donc si je veux le texte de 10 liens donc de 10 pages html, je dois tout mettre sur ma page principale et je vais me retrouver avec une page principale aussi lourde que 10 pages html !
Bien sur, je ne veux pas qu'il y ait un effet de "reload" (il n'y en a pas du tout avec "hidden" et "getElementById" qui permettent une parfaite fluidité d'affichage ).
Je crois savoir (d'apres ce que j'ai lu dans les revues d'informatique) que c'est possible avec AJAX (et "HTTPrequest" je crois) mais je ne connais pas du tout cette pratique.
J'ai un peu lu dessus, mais il faut me semble t il une API coté serveur .. donc je prefere attendre pour l'instant, avant d'utiliser cette pratique.
Quelqu'un a-t-il une solution ?
(NB : j'ai XP avec FF 2.0 et IE).
Message envoyé avec : Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.8.1.2) Gecko/20070219 Firefox/2.0.0.2