Page 1 sur 1
Selects/Combobox/Listes déroulantes sous Mozilla <> I
Publié : 11 mai 2004, 10:03
par dd32
Bonjour,
J'ai remarqué une différence de présentation entre IE et Mozilla en ce qui concerne des objets de formulaire.
Ce sont 2 'comboboxs liés'.
Le choix dans le premier combo permet de remplir le second combo.
Par défaut lors du chargement de la page seul le premier combo est rempli.
Le second combo est vide et est en attente d'une sélection dans le premier combo.
Aucun problème de hauteur de combo sous IE.
Sous Mozilla, le problème c'est que les combos remplis par défaut ont une hauteur normale mais celui qui est vide est plus petit (et il continue à être plus petit même une fois remplis après sélection dans le premier combo).
Est-ce que quelqu'un connaît une parade sans que je n'ai besoin de changer tout mon code svp.
Ou au moins, est-ce que quelqu'un a une explication ??
Exemple :
Sous Mozilla, au chargement de la page, ci dessous :
le combo 1 est type materiel et le combo 2 est marque (il y a aussi un combo 3 qui est rempli après sélection dans le combo 2)
Sous Mozilla, après sélection du combo 1, remplissage du combo 2 (la taille du combo 2 reste plus petit que le combo 1 !) :
Sous IE, j'ai ceci au chargement de la page :
Sous IE, après sélection du combo 1, remplissage du combo 2 :
Merci d'avance. A bientôt !
Vous pouvez aussi visualisez mon message sur phpnet où on m'a conseillé de venir 'par ici' :
http://www.phpnet.org/forum/index.php?a ... entry36019
Publié : 11 mai 2004, 10:30
par Benoit
C'est juste la hauteur que tu ne trouves pas très esthétique c'est ça ?
J'essaierais un truc stupide genre mettre juste une espace dans les champs "vides" pour qu'il réserve déjà la place en hauteur.
Ce serait bien aussi si tu nous donnais l'adresse de la page qu'on puisse tester au cas où la solution passe par des styles supplémentaires à appliquer.
Publié : 11 mai 2004, 13:23
par SB
sinon une réponse a été apportée sur phpnet qui pourrait bien être la bonne : ajouter une unité à ta valeur height.
Publié : 11 mai 2004, 13:24
par calimo
En effet il peut y avoir des milliers de raisons à ça. Par exemple tu as défini une hauteur sans t'en rendre compte ou je ne sais quoi.
En plus fais attention avec le javascript à ce que ce soit accessible même sans...

reponses
Publié : 11 mai 2004, 18:30
par dd32
Tout d'abord merci à tous pour vos réponses.
Je réponds dans l'ordre :
Benoît :
C'est effectivement la hauteur qui me dérange ou plutôt qui dérange mon client et chef de projet

Je développe une console d'administration, je ne peux donc pas dévoiler la page en question
et c'est pour cette raison que j'ai fait des captures d'écran.
Le code qui remplit les selects au-fur-et-à-mesure est assez compliqué car il mêle php et javascript.
Mais ça marche très bien sous IE.
Il y a déjà un espace (un 'vide') comme valeur par défaut des selects qui ne sont pas 'remplis' au chargement de la page...
SB :
Comme je l'ai répondu sur phpnet j'ai fait l'essai de définir 'height' dans ma feuille de style puis de l'appliquer à mes selects mais ça n'a rien changé. Soit je me suis plantée dans le code, soit c'est impossible à faire... (voir mon dernier post sur phpnet)
Calimo :
Je ne précise aucune hauteur particulière pour les selects dans mon code.
Calimo -> "tu as défini une hauteur sans t'en rendre compte ou je ne sais quoi"
Et pourquoi ça marche sans problème sous IE alors ??
Si vous avez d'autres pistes svp.... A votre bon coeur !
Re: reponses
Publié : 11 mai 2004, 19:28
par SB
dd32 a écrit :SB :
Comme je l'ai répondu sur phpnet j'ai fait l'essai de définir 'height' dans ma feuille de style puis de l'appliquer à mes selects mais ça n'a rien changé. Soit je me suis plantée dans le code, soit c'est impossible à faire... (voir mon dernier post sur phpnet)
Tu n'as pas spécifié d'unité.
Essaie de emplacer .XXX { height:20 } par .XXX { height:20
px }
ben voilà
Publié : 12 mai 2004, 12:05
par dd32
Merci pour l'info
J'ai essayé (en fait j'avais bien mis "px") : ça marche beaucoup mieux !! 8)
Re: reponses
Publié : 12 mai 2004, 15:41
par calimo
dd32 a écrit :Et pourquoi ça marche sans problème sous IE alors ??
C'est un grand classique... IE est beaucoup plus tolérant sur les erreurs que ne peut l'être n'importe quel autre navigateur et les "corrige" de lui-même (ce qui évidemment pose de nombreux problèmes).
D'ailleurs il semblerait que c'était bien ça

Au secours !!
Publié : 12 mai 2004, 23:26
par Invité
Ha hem....
Ben en fait j'ai pas dû regarder le bon navigateur (cf IE) et ça ne marche pas sous Mozilla la redim de select...
Rajouter la hauteur dans les styles avec la propriété 'height' ne semble pas avoir fonctionné...
Ouin !
Une solution pour moi svp ??

Re: Au secours !!
Publié : 13 mai 2004, 10:17
par bobo
Anonymous a écrit :Une solution pour moi svp ??

Est-ce que tu peux fabriquer une page minimaliste exhibant le problème ? Je comprend bien que tu ne puisses pas nous montrer la page réelle, mais avec un exemple concret, ça serait plus facile de trouver des solutions.
ok pas de pb...
Publié : 13 mai 2004, 15:48
par dd32
Procédé : on renseigne la page de la façon suivante :
1) Choisir un type de matériel PUIS une marque PUIS un modèle.
(Ces trois selects sont liés et remplis au-fur-et-à-mesure.)
2) Choisir un type de vendeur PUIS une raison sociale.
(Ces deux selects sont liés.)
Ma définition pour "selects liés" : deux selects sont liés si le contenu du second select est déterminé par l'élément sélectionné dans le premier select)
Voici la page sous IE :
I -
1) au chargement de la page
2) on sélectionne un élément du select "Type de Matériel"
3) on sélectionne une marque
4) on sélectionne un modèle
II -
5) on sélectionne un type de vendeur
6) on sélectionne une raison sociale
Voici la même sous Mozilla : et les selects sont riquiquis
I -
1) au chargement de la page
2) on sélectionne un élément du select "Type de Matériel"
3) on sélectionne une marque
4) on sélectionne un modèle
II -
5) on sélectionne un type de vendeur
6) on sélectionne une raison sociale
OUF ! Je rappelle au passage que le problème qu'il y a entre IE et Mozilla c'est que Mozilla affiche une hauteur plus petite qu'IE pour les selects qui sont 'vides' au chargement de la page (mais en fait j'ai mis un espace...)
Désolée c'est tout ce que je peux faire car refaire le code des selects liés me prendrait trop de temps...
Merci pour votre aide !
Publié : 13 mai 2004, 16:12
par chBok
Juste au cas où, essaie de changer le thème de Mozilla, ca peut influer sur l'affichage des "widgets" que sont les liste de formulaire...
Rien de changé
Publié : 13 mai 2004, 17:00
par dd32
Rien de changé malheureusement...
De toutes façons si c'était ça, cela aurait voulu dire que mes visiteurs auraient été obligés de changer de thème aussi pour ne pas avoir ce problème de hauteur de select.
Merci pour le tuyau c'est sympa !
Publié : 13 mai 2004, 17:14
par calimo
Les champs ne peuvent-ils pas contenir un espace à la base (genre ) pour les obliger à prendre la taille...
Et si ils ont du texte dedans au chargement ?
pour conclure
Publié : 13 mai 2004, 17:19
par dd32
Visiblement, je n'ai plus qu'à me rendre à l'asile.
J'ai remis les espaces dans mes selects et ça fonctionne maintenant.
Ceci est sans doute dû à un problème de rafraichissement sans doute.
J'ai un peu honte...
En tous cas, merci à tous pour votre aide !!