Menu déroulant

Menu déroulant - HTML/CSS - Programmation

Marsh Posté le 16-11-2004 à 13:33:08    

Bonjour
 
J'utilise des css afin d'afficher un menu déroulant sur mon site. Cela fonctionne bien avec IE, Netscape et Opéra. Avec Mozilla cela décale tout sur la droite.
 
voici la fonction utilisée pour posionner le menu:
 
#menu {position: relative;top: 0;left: 0;z-index:100;width: 1024;}
 
La position relative ne fonctionne pas avec Mozilla.
 
Si quelqu'un a une idée.
 
Merci
a+

Reply

Marsh Posté le 16-11-2004 à 13:33:08   

Reply

Marsh Posté le 16-11-2004 à 14:13:55    

lposition:relative fonctionne très bien avec mozilla mais sans plus de précision en particulier le code de la page ou mieux, une url. on peut pas trop te dire


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 20-11-2004 à 19:40:57    

Ok voici le code.
 
function affiche_style_menu_h()
{
     global $TABLE_MENU_H;
     global $base;
 
     $table=$TABLE_MENU_H;
     connect_db();
     $query="SELECT * FROM $table ORDER BY id";
     $resu=mysql_db_query($base,$query);
     while ($row=mysql_fetch_array($resu))
     {
          $id=$row['id'];
         $type=$row['type'];
         $nom=$row['nom'];
         $affiche=$row['affiche'];
         $lien=$row['lien'];
         $fond_m=$row['fond_m'];
         $fond_ms=$row['fond_ms'];
         $police_m=$row['police_m'];
         $taille_m=$row['taille_m'];
         $gras_m=$row['gras_m'];
         $souligne_m=$row['souligne_m'];
         $couleur_m=$row['couleur_m'];
         $couleur_ms=$row['couleur_ms'];
         $surligne_ms=$row['surligne_ms'];
         $aligne_m=$row['aligne_m'];
         $aligne_ms=$row['aligne_ms'];
         $bordure_couleur_m=$row['bordure_couleur_m'];
         $bordure_style_m=$row['bordure_style_m'];
         $bordure_taille_m=$row['bordure_taille_m'];
 
         $nom=stripslashes($nom);
         $lien=stripslashes($lien);
       
         if($id<10)
         {
        $tnom[$id]=$nom;
        $taffiche[$id]=$affiche;
        $tfond_m[$id]=$fond_m;
        $tfond_ms[$id]=$fond_ms;
        $tpolice_m[$id]=$police_m;
        $tpolice_m[$id]=$police_m;
        $ttaille_m[$id]=$taille_m;
        $tgras_m[$id]=$gras_m;
        $tsouligne_m[$id]=$souligne_m;
        $tcouleur_m[$id]=$couleur_m;
        $tcouleur_ms[$id]=$couleur_ms;
        $tsurligne_ms[$id]=$surligne_ms;
        $taligne_m[$id]=$aligne_m;
        $taligne_ms[$id]=$aligne_ms;
        $tbordure_couleur_m[$id]=$bordure_couleur_m;
        $tbordure_style_m[$id]=$bordure_style_m;
        $tbordure_taille_m[$id]=$bordure_taille_m;
          }
 
         if($id>9)
         {
        $tnom[$id]=$nom;
        $taffiche[$id]=$affiche;
        $tlien[$id]=$lien;
         }
     }
 
     $affiche_style_menu_h.='<style type="text/css"><!--';
     $affiche_style_menu_h.='dl, dt, dd, ul, li {margin: 0;padding: 0;list-style-type: none;}';
     $affiche_style_menu_h.='--></style>';
 
     $affiche_style_menu_h.='<style type="text/css"><!--';
     $affiche_style_menu_h.='#menu {position: relative;z-index:100;width: 1024px;}';
     $affiche_style_menu_h.='--></style>';
 
     for($i=1;$i<6;$i++)
     {
   if($taffiche[$i]==1)
   {
        $affiche_style_menu_h.='<style type="text/css"><!--';
        $affiche_style_menu_h.='#smenu'.$i.' {position: absolute;z-index:1000;width: 12em;}';
        $affiche_style_menu_h.='#menu dl {float: left;width: 12em;}';
        if($taligne_ms[$i]=="" ) $taligne_ms[$i]="left";
        if($tpolice_m[$i]=="" ) $tpolice_m[$i]="Arial";
        $affiche_style_menu_h.='#smenu'.$i.' li {text-align: '.$taligne_ms[$i].';background: #'.$tfond_ms[$i].';}';
        $affiche_style_menu_h.='#smenu'.$i.' li a, #menu dt a {font-size: '.$ttaille_m[$i].'px;font-family: '.$tpolice_m[$i].';color: #'.$tcouleur_ms[$i].';text-decoration: none;border: 0 none;width: 100%;}';
        $affiche_style_menu_h.='#smenu'.$i.' li a:hover, #menu dt a:hover {background: #'.$tsurligne_ms[$i].';}';
        $affiche_style_menu_h.='--></style>';
   }
     }
 
     return $affiche_style_menu_h;
}
 
a+ :bounce:

Reply

Marsh Posté le 20-11-2004 à 19:45:05    

paye ton code de merde  [:totoz]  [:totoz]

Reply

Marsh Posté le 20-11-2004 à 19:51:12    

qui qui veux le totor???

Reply

Marsh Posté le 20-11-2004 à 20:07:05    

salut,
 
le menu n'a rien à voir.
c'est le tableau en dessous qui se decale (balance lui un gros align=left) et refais ta page sans tableaux .
 
page de 200ko ! trop lourde , evite les images inutiles qui remplacent du texte.
 
L.

Reply

Marsh Posté le 20-11-2004 à 20:10:39    

Ok merci pour l'info je vais étudier cette possibilité.
 
a+

Reply

Marsh Posté le 20-11-2004 à 20:15:07    

Désolé mais le coup du left je viens de le tester et cela ne change rien au pb.
 
Tant pis il faut chercher une autre piste.
 
merci quant même.

Reply

Marsh Posté le 20-11-2004 à 20:49:34    

Je vois pas trop l'intérêt de position: relative avec left et top à 0, ca déplace ton objet là ou il est déjà -_-


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 20-11-2004 à 20:54:53    

En fait c'est un menu configurable à volonté. Tu peux décider d'afficher ce menu déroulant ou pas. L'intéret de la position relative me permet de ne pas dépendre de la configuration du site et de placer ce menu au bon endroit quelque soit le choix de configuration.
 
Mais la position relative semble être acceptée par tous les navigateurs sauf mozilla. Et il est interressant de savoir et de comprendre pourquoi.
 
 :D

Reply

Marsh Posté le 20-11-2004 à 20:54:53   

Reply

Marsh Posté le 20-11-2004 à 20:58:25    

ARTIDOINE a écrit :

En fait c'est un menu configurable à volonté. Tu peux décider d'afficher ce menu déroulant ou pas.


ok, coule

Citation :

L'intéret de la position relative me permet de ne pas dépendre de la configuration du site et de placer ce menu au bon endroit quelque soit le choix de configuration.


Tu sais comment fonctionne position:relative?

Citation :

Mais la position relative semble être acceptée par tous les navigateurs sauf mozilla. Et il est interressant de savoir et de comprendre pourquoi.


Position: relative fonctionne très bien sous mozilla/firefox [:spamafote]  
regarde


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 20-11-2004 à 21:02:33    

Citation :

Position: relative fonctionne très bien sous mozilla/firefox


 
La preuve que non. Si tu as des documents concernant ce sujet, je suis preneur.
 
 :hello:

Reply

Marsh Posté le 20-11-2004 à 21:06:03    

il t'a donné un lien sur le sujet
pour ma part, j'utilise la postion relative assez régulièrement avec mozilla et je n'ai jamais eu aucun pb.
 
c'est ton code qui pose problème


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 20-11-2004 à 21:07:19    

ARTIDOINE a écrit :

Citation :

Position: relative fonctionne très bien sous mozilla/firefox


 
La preuve que non. Si tu as des documents concernant ce sujet, je suis preneur.
 
 :hello:


tu n'as pas donné la moindre preuve, je t'ai fourni un lien-test de position:relative.
 
 :hello:
 
et tu ne m'as toujours pas donné la preuve que tu comprends le fonctionnement de position:relative


Message édité par masklinn le 20-11-2004 à 21:07:48

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 20-11-2004 à 21:11:32    

Mjules a écrit :

il t'a donné un lien sur le sujet
pour ma part, j'utilise la postion relative assez régulièrement avec mozilla et je n'ai jamais eu aucun pb.
 
c'est ton code qui pose problème


 
Ok j'avais pas vu le lien. Mais si tu as l'habitudes tu dois voir d'ou vient le pb.
 
 :sol:

Reply

Marsh Posté le 20-11-2004 à 21:13:50    

je n'ai malheureusement pas les connaissances pour corriger du javascript, j'ai déjà bien du mal à faire du html/css (même si j'ai des bases à peu près correctes dans ce domaine)


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 20-11-2004 à 21:15:48    

Dommage. Bon position relative fonctionne ok. Mais c'est ou le pb.
 
merci quant même. :??:

Reply

Marsh Posté le 20-11-2004 à 21:15:49    

re,
 
moi en mettant align=left à la table qui suit le menu, c'est bon avec firefox.
 
mais ton code est tellement "compacté" que tu dois avoir du mal à trouver la table .
 
L.

Reply

Marsh Posté le 20-11-2004 à 21:19:21    

Non j'ai essayé de mettre align=left et cela ne change en rien. Il semblerait que le menu suivant est décalé à droite mais au même niveau et non pas en dessous. J'ai même essayé d'ajouter un <br> au cas ou. Mais cela ne change rien.
 
Au fait c'est pas du javascript mais du php. ;)  
 
merci de ton aide :hello:

Reply

Marsh Posté le 20-11-2004 à 21:24:11    

ok :
 
1- ouvrir la page avec I.E.
2- enregistrer la page sur le disc.
3- mettre align=left à la table.
4- ouvrir avec firefox.
 
et maintenant ?
 
L.

Reply

Marsh Posté le 20-11-2004 à 21:30:09    

Reply

Marsh Posté le 20-11-2004 à 21:36:13    

bon j'ai fait la manip sur la table. pas d'effet. puis j'ai cherché tous les align et je les ai passé à left. Rien ne change.
 
Tu as fait la manip et çamarche?

Reply

Marsh Posté le 20-11-2004 à 21:37:42    

Hola moi j'y arrive pas. Peux-tu me faire la même copie d'écran en affichant le code que tu as changé.

Reply

Marsh Posté le 20-11-2004 à 21:40:24    

J'utilise mozilla sous windows 1.7.3

Reply

Marsh Posté le 20-11-2004 à 21:41:25    

voilà:
 
http://bluejayway.free.fr/artidoine.htm
 
++
 
L.
 
(modif indiquée dans code source)


Message édité par Leris le 20-11-2004 à 21:42:30
Reply

Marsh Posté le 20-11-2004 à 21:45:55    

Super!!!!!Merci!!!!Tu me sauves lavie!!!!!!
 
:ouimaitre:

Reply

Marsh Posté le 20-11-2004 à 21:46:05    

test ok sur I.E.6, mozilla.1.0, firefox.1.0, opera.7.54, netscape.7
 
L.

Reply

Marsh Posté le 20-11-2004 à 21:47:07    

je te conseille tout de même d'alleger ta page en utilisant div + css et photos moins "lourdes" .
 
L.

Reply

Marsh Posté le 20-11-2004 à 21:47:40    

Tu es le plus fort.
 
:ouimaitre::love:

Reply

Marsh Posté le 20-11-2004 à 21:48:28    

Ok merci du conseil, j'en tiendrais compte

Reply

Marsh Posté le 20-11-2004 à 23:15:32    

Sinon ton site il sert à quoi?
Parceque bon, je me met à la place d'un pro, je cherche un hébergeur, je vais sûrement pas aller chez toi [:rofl]


Message édité par Ayuget le 20-11-2004 à 23:17:51
Reply

Marsh Posté le 20-11-2004 à 23:17:13    

D'ailleurs l'attribut correct à rajouter (ie correct syntaxiquement) aurait été align="left". Bon, en HTML 4.01 strict, il me semble que ce n'est pas imposé, mais autant prendre de bonnes habitudes.
 
D'accord, le code source était à l'origine pourri, mais tant qu'a faire autant essayer de l'arranger un minimum.


Message édité par Ayuget le 20-11-2004 à 23:22:32
Reply

Marsh Posté le 22-11-2004 à 11:37:28    

Le pb a été résolu
 
merci de votre aide
 
a+ :hello:

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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