[resolu] CSS - Appel d'un div codé ailleurs

CSS - Appel d'un div codé ailleurs [resolu] - HTML/CSS - Programmation

Marsh Posté le 07-03-2008 à 10:04:17    

Bonjour a tous,
 
je suis en train de coder un site en CSS/HTML dans lequel chaque page recevra le meme bandeau et un meme menu.
 
Une solution serait de reinserer dans chaque page le code de ce beandeau et de ce menu, mais ce n'est pas top : trop lourd et pas pratique si je veux modifier, par exemple, le menu. Je serais oblige de revisiter chaque page.
 
Mon idee est donc d'utiliser des frames, ou mieux, des pseudo frames. Les parties communes a toutes les pages seraient chacune ecrite dans une page separee et cette page serait appelee par la page visitee.
 
Initialement, les frames me paraissaient interessantes, mais elles montrent vite leurs limite : risque de debordement en cas d'augmentation de la taille de police par l'utilisateur ou simplement absence de controle de la resolution de l'ecran !
 
J'ai donc trouve une alternative : passer par un div contenant un object.
Ca donnerait ceci :
page visitee (page principale):
<div id="headerband">
<object data="headerband.htm" type="text/html"> </object>
</div>
page appelee : (contenant ici seulement un lien et jouant le role de menu)
<a class="bouton" href="xyz/index.htm">xyz</a>
Le probleme, c'est qu'en cliquant sur le lien, la page cible (contenant le contenu, le bandeau et le menu) s'ouvre dans l'object !!! La nouvelle page ne prend donc pas la place de la precedente comme tout internaute en a l'habitude.
 
J'ai ensuite essaye d'inserer une propriete "target" dans le href. Le probleme est alors different : la page est chargee dans une nouvelle page, comme si j'avais ecrit target="_blank", et ce quoi que j'ecrive a la place de _blank.
 
Quelqu'un aurait il donc une solution a me proposer pour, soit afficher dans la meme page en partant de l'utilisation de l'object, soit appeler une page dans le meme principe que les frames, mais sans frames et sans object ??
 
Merci !!!

Message cité 1 fois
Message édité par jecario le 17-03-2008 à 13:30:38
Reply

Marsh Posté le 07-03-2008 à 10:04:17   

Reply

Marsh Posté le 07-03-2008 à 20:46:26    

PHP est là pour ça, si tu l'as sur ton serveur. Entre autres tutos, http://css.alsacreations.com/Tutor [...] race-a-PHP
 
Si tu n'as pas PHP, change de serveur :)

Reply

Marsh Posté le 08-03-2008 à 00:13:25    

...


Message édité par Demo Mana le 28-04-2008 à 18:27:56
Reply

Marsh Posté le 10-03-2008 à 11:37:36    

Merci pour ces petites reponses !
 
Elles sont les solutions a mon probleme mais elles montrent que je ne peux pas le resoudre : ce n'est pas un serveur Apache et je ne peux pas utiliser de php... et je ne peux pas non plus changer de serveur ;)

Reply

Marsh Posté le 10-03-2008 à 18:38:09    

...


Message édité par Demo Mana le 28-04-2008 à 18:27:59
Reply

Marsh Posté le 10-03-2008 à 20:58:30    

Ou alors avec un target="_top". Pas sûr que ça soit XHTML over-strict compliant, mais ça à l'air de fonctionner dans FF et Safari. IE, j'ai pas pu testé.

Reply

Marsh Posté le 11-03-2008 à 10:02:16    

...


Message édité par Demo Mana le 28-04-2008 à 18:28:01
Reply

Marsh Posté le 11-03-2008 à 10:43:31    

tu peux peut-etre utiliser la librairie javascript "jquery" qui te permet grace a la fonction "load" de charger dans une div le contenu d'une page html.
 
Je l'utilise pour réaliser des maquettes de sites (donc tout en HTML, pas de php ou de serveur apache).
 
Ca me permet d'externaliser mon menu, l'entete et le pied de page dans des fichiers séparé.
 
Voila j'espere que ca pourra aussi te servir

Reply

Marsh Posté le 11-03-2008 à 13:43:28    

Merci pour l'idee bob_eponge, je vais voir dans cette direction.
 
tpierron, le target=_top ouvre le lien dans une nouvelle fenetre, de la meme maniere que les autres cibles, malheureusement...
 
[edit] : finalement, le jquery ne me va pas du tout parce qu'une partie de mes visiteurs desactive le javascript !
Je vais regarder le xmlhttprequest...


Message édité par jecario le 11-03-2008 à 14:43:09
Reply

Marsh Posté le 11-03-2008 à 15:28:14    

xmlhttprequest c'est aussi du javascript. C'est bizarre pour le target="_top", ça devrait fonctionner (et tous les cas, le petit exemple que j'avais fais sous FF et Safari, fonctionnait correctement, IE me faisait son caca nerveux habituel, comme quoi activex ça pu et qu'il veut pas le charger, blablabla). Tu utilises quel navigateur pour tester ?

Reply

Marsh Posté le 11-03-2008 à 15:28:14   

Reply

Marsh Posté le 11-03-2008 à 16:24:21    

Je n'ai percute qu'apres coup que xmlhttprequest est aussi du javascript, donc ca ne marche pas non plus...
 
Le target="_top" ouvre la nouvelle page dans l'object et target="top" (sans l'underscore, donc) ouvre dans une nouvelle fenetre.
Je teste sur IE6, c'est ce navigateur que vont utiliser mes visiteurs ! Ca n'est pas l'ideal, mais je manque de choix...

Reply

Sujets relatifs:

Leave a Replay

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