Faire un menu sans frame ? [Résolu]

Le premier forum francophone sur l'éditeur de pages Web multiplateforme (Linux, Mac OS X, Windows) qui monte… KompoZer, héritier de Nvu, permet de créer vos pages Web graphiquement (wysiwyg) sans aucune connaissance du langage HTML.

Modérateur : chinon37

Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Faire un menu sans frame ? [Résolu]

Message par Mat35 »

Bonjour à tous,

Après avoir fait quelques sites en html sous Frontpage (eh oui, je sais...), j'ai totalement délaissé cela depuis 10 ans au profit de CMS qui répondait plus à mes besoins.
Mais aujourd'hui j'ai un problème que mes faibles connaissances et mes lectures ne me permettent pas de résoudre.

Une collègue a un site créé avec Nvu présenté de façon très classique : en-tête, menu à gauche, corps de page au centre (ou en bas à droite si on compte les trois zones).
Le menu est amené à être modifié régulièrement pour des ajouts...
Or, lorsqu'elle veut modifier la moindre coquille dans ce menu, elle me dit devoir la modifier dans les 100+ pages du site : c'est donc long et fastidieux !

Sous Frontpage, j'utilisais les frame, ce qui me paraissait la meilleure solution.
Mais en cherchant sur le net, j'ai vu que les frames n'étaient plus en odeur de sainteté et que Kompozer ne les gérait pas de toute façon.
Pas de souci en soi mais comment faire du coup ?

Mes questions sont donc :
- y a-t-il un moyen de modifier le menu de ce site en une seule manipulation (et non manipulation x le nombre de pages) ?
- comment créer ce menu pour arriver à ce résultat ?
- les frames sont-ils vraiment une mauvaise solution dans ce cas ?

Merci d'avance.
Mat
Dernière modification par Mat35 le 20 janv. 2012, 15:06, modifié 1 fois.
chinon37
Animal mythique
Messages : 5319
Inscription : 21 mars 2005, 10:17

Re: Faire un menu sans frame ?

Message par chinon37 »

Inutile de recourir aux frames.
Un peu de php suffit

Tu trouveras un tuto détaillé ici: http://josar.free.fr/tutoKompozer/MenuM ... nclus.html
Préferez Kompozer 0.8 à Nvu
Défendons nos valeurs, adhérons à l'APRIL
La Démocratie, c'est quand on frappe à votre porte à 6h00 du matin, et que c'est le laitier.
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Merci pour le tuto qui me sera utile mais... une autre fois.

J'ai oublié de signaler que le serveur utilisé n'accepte pas le php :cry:
Mutima
Salamandre
Messages : 34
Inscription : 18 janv. 2010, 23:09

Re: Faire un menu sans frame ?

Message par Mutima »

Une autre solution serait de créer le menu dans une page html... et de l'incorporer dans un frame intégré par la balise <iframe>. C'est un cadre portatif en quelque sorte qui n'a pas la lourdeur des frames classiques.
Donc sur chaque page on insère <iframe src="menu.html" style="border-width: 0pt;" frameborder="0" height="200px" scrolling="NO" width="100%"></iframe> par exemple ou éventuellement avec d'autres attributs.

L’attribut "src" (pour source) appelle la page menu.html dans le cadre iframe placé à l'endroit ad hoc sur la page. Le même menu est donc appelé sur chaque page qui incorpore ce code dans la zone <body>.

Exemple : http://www.visa-ad.org/
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Bonjour,

Bien que long à la détente je finis par répondre.
Après avoir bidouillé un peu, j'arrive à faire fonctionner ta solution : donc un grand merci c'est ce que je cherchais !

Toutefois, j'ai des problèmes de mise en page.
Le menu qui s'ouvrait très bien s'ouvre de façon un peu bancal désormais (en local) alors que je fais appel à la même feuille de style css.

Si quelqu'un a le courage de m'aider :

- le site se trouve là (l'important est le menu à gauche) : http://pharouest.ac-rennes.fr/e350743T/afaccueil.html

- lorsque je crée ma nouvelle page avec un "pseudoframe" les sous-menus (déroulants) sont présentés différemment : beaucoup trop grands, les textes sont très espacés et il y a un petit rectangle blanc (environ 50 pixels de haut je dirais) en bas du sous-menu.

Merci d'avance
Mat
Ymai
Tyrannosaurus Rex
Messages : 4220
Inscription : 12 mars 2005, 11:36

Re: Faire un menu sans frame ?

Message par Ymai »

Bonjour
Mat35 a écrit :- lorsque je crée ma nouvelle page avec un "pseudoframe" les sous-menus (déroulants) sont présentés différemment : beaucoup trop grands, les textes sont très espacés et il y a un petit rectangle blanc (environ 50 pixels de haut je dirais) en bas du sous-menu.
Que donnerait un copié/collé d'une page "qui va bien" vers une page vierge et dont on enlèverait les éléments inutiles? On aurait ainsi une sorte de page modèle à conserver au frais.
ymai
« Un enfant de cinq ans comprendrait cela ! Allez me chercher un enfant de cinq ans ! »
Groucho Marx.
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Bonjour,

C'est ce que j'ai fait mais le problème apparaît malgré tout.
J'imagine bien que j'ai dû oublier d'enlever certaines "lignes" ou en enlever trop (mais là je ne pense pas), mais je pense plutôt que c'est dû au fichier css.

Comme je ne voulais pas trop rentrer dans le détail (ne maitrisant pas le css non plus !), j'ai laissé tel quel le fichier css pour les 2 pages : ma pahe menu.html (qui gère le pseudoframe menu) et la page principale affaccueil.html.
Je pense que ça crée un bug, mais je n'arrive pas à travailler convenablement un fichier css spécifique au menu.

Mat
Mutima
Salamandre
Messages : 34
Inscription : 18 janv. 2010, 23:09

Re: Faire un menu sans frame ?

Message par Mutima »

MAT 35, je ne comprends pas bien vos messages. Voilà ce que je comprends :

1-Vous êtes dans un fil de discussion "menu sans frame" avec la volonté d'avoir un seul et même menu pour toutes vos pages
2-Votre exemple présente un menu "en dur" dans la page
3-Vous semblez traiter d'un problème de mise en forme du menu par CSS
4-Je ne vois qu'un fichier style.css pour l'ensemble de la page

Donc première chose, avant de résoudre les problèmes de forme, il faut résoudre les problèmes de structure.

Le css suivra cet aspect de lui-même puisque si vous avez une page qui gère le menu vous pourrez facilement associer le Css spécifique à la page menu.

Donc ma question est : quelle solution choisissez-vous pour incorporer dans chaque page la même page menu html ? Si j'ai bien compris vous ne pouvez pas le faire par un include en php. Je ne connais qu'une autre solution, il y en a peut être d'autres, créer une balise <iframe> au même endroit dans chaque page et mettre dans cette balise la source menu.html.
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Je résume tout car effectivement je semble ne pas avoir été clair :

1. Je n'ai pas la main pour faire les changements en ligne (je le fais pour une collègue) : ce que vous voyez est donc la solution actuelle (pas agréable) avec le menu en dur dans chaque page.

2. Je fais des tests en local uniquement avec ce que j'ai compris de vos explications (qui sont claires mais que je mets sûrement mal en pratique) :
- une page menu.html avec un fichier css associé (pour ne pas m'embêter à ce niveau là, j'ai repris tel quel le fichier css de la page d'accueil actuelle appelée afaccueil.html : c'est de là que doit provenir le problème de mise en page)
- des (combien ???) pages du site qui incorporent chacune une balise <iframe>... appelant la page menu.html (chacune avec son css).

J'ai fonctionné par copier/coller tout bête en enlevant ce qui paraissait inutile et en faisant de légères modifications très basiques.
Le principe est donc bien compris et correspond exactement à ce qui est voulu excepté ce problème de mise en page des blocs déroulants du menu : ce que vous pouvez voir actuellement correspond à ce que veut l'auteur.
Avec mes bidouilles, les blocs ont la bonne largeur mais sont beaucoup plus hauts ce qui espace exagérément les noms des sous-rubriques et qui en plus ajoute un rectangle blanc à la suite.

Les problèmes n'étant que des problèmes de mise en page, j'imagine donc que c'est dû à ma fainéantise :D de vouloir à l'identique le fichier css actuel en le renommant uniquement.
En fait je ne sais pas trop où "tailler" dans ce css pour n'isoler que les infos concernant le menu, pour éviter des erreurs j'ai tout laissé (après avoir fait un ou deux essais infructueux).

Voilà la situation
Mat
Mutima
Salamandre
Messages : 34
Inscription : 18 janv. 2010, 23:09

Re: Faire un menu sans frame ?

Message par Mutima »

Ok. Je comprends mieux.

Les problèmes d'espaces entre ligne : ouvrir la boite des styles CSS et, sur les balises <dt> ou <li> correspondant à vos lignes de menu et sous-menus, choisir l'onglet Box : paramétrer les marges hautes et basses en choisissant d'abord une unité dans la liste déroulante (0px par exemple).

Mais je n'aurais pas choisi des balises <dt> pour ce type de menus. La liste <dl> <dt> <dd> cela sert a énumérer des listes de définitions à priori. Pourquoi ne pas les changer en <ul> et <li>, structure plus simple, sans mettre de puce, comme pour les sous-menus ?
Dernière modification par Mutima le 12 janv. 2012, 11:30, modifié 2 fois.
chinon37
Animal mythique
Messages : 5319
Inscription : 21 mars 2005, 10:17

Re: Faire un menu sans frame ?

Message par chinon37 »

Bonjour,
Je suis étonné qu'un site ****.ac-rennes.fr n'accepte pas le php.
Le site du collège Anne de Bretagne de Rennes est sous spip, et accepte donc le php. L'hébergement ne serait pas le même pour toutes les écoles?
Préferez Kompozer 0.8 à Nvu
Défendons nos valeurs, adhérons à l'APRIL
La Démocratie, c'est quand on frappe à votre porte à 6h00 du matin, et que c'est le laitier.
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Bonjour,

1. Merci pour la réponse sur le css, je vais essayer les deux types de modif (je n'ai pas créé ce fichier donc je ne sais pas pourquoi il a été fait de cette façon).

2. Sur l'académie de Rennes, les sites d'établissement sont hébergés sur un serveur appelé Pharouest. Jusqu'à 2009/2010 (environ), c'était uniquement de l'html. Depuis, la solution SPIP-Soyezcreateurs est proposée (pour les créations). Les sites en html ne seront supprimés que dans un an (ou conservés pour certains ayant beaucoup de visiteurs et ne souhaitant pas migrer).

Bonne journée.
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Bonjour,

Je reviens vers vous, car je n'arrive pas à régler mon problème de présentation du menu (le chargement du menu depuis n'importe quelle page se faisant parfaitement).
J'ai essayé avec la modification du css mais je ne trouve pas la solution.

J'ai donc, de nouveau, enregistré en local la page d'accueil du site et tenter de supprimer les lignes du code html qui ne me servent à rien pour ne conserver que les éléments du menu.

Et là, je me rends compte que dès que je fais une modification sur le fichier "affaccueil.html" aussi anodine soit-elle mon menu est systématiquement chamboulé : même si je ne touche à rien qui concerne le menu.
=> par exemple unique suppression de <meta name="author" content="XXX yyy">

Je n'y comprends donc vraiment rien...

Merci de m'aider.
Mat
chinon37
Animal mythique
Messages : 5319
Inscription : 21 mars 2005, 10:17

Re: Faire un menu sans frame ?

Message par chinon37 »

Bonjour,

Désolé de répondre si tard.
Il faudrait savoir de quel type de bazar il s'agit? mais cela ressemble fortement à un bogue déjà constaté et répertorié: la création intempestive d'espace entre les items du menu.
Cela se matérialise dans le menu (code source) par des <br> qui ne devraient pas être là.

Il doit être possible de les supprimer par le nettoyeur de balises:
Outils > nettoyeur de balise... > cocher "supprimer les <br> superflus"
cela peut avoir un inconvénient de taille si le site a été mis en page à coup de touches "entrée" intempestive: les <br> ainsi créés risquent de disparaitre également!
Cette méthode n'est pas assurée pour supprimer le problème. A essayer cependant ... si le problème est celui-ci.
Préferez Kompozer 0.8 à Nvu
Défendons nos valeurs, adhérons à l'APRIL
La Démocratie, c'est quand on frappe à votre porte à 6h00 du matin, et que c'est le laitier.
Mat35
Arias
Messages : 10
Inscription : 15 déc. 2011, 17:03

Re: Faire un menu sans frame ?

Message par Mat35 »

Merci, c'est bien le problème.
Mais le nettoyeur de balises ne le résout pas, au contraire, il en rajoute !

J'ai essayé de tout supprimer manuellement, mais au moment de l'enregistrement, rebelote.
J'ai donc supprimer manuellement puis copier-coller dans un bloc-notes et enregistrement en .html : même chose.

Je continue donc de chercher comment l'enregistrer tel que je le veux (je commence à supprimer les "entrées" superflus éventuellement.

A suivre mais le problème a été pointé en tout cas.
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités