28220 sujets

CSS et mise en forme, CSS3

Bonjour,

Ceci est mon premier post sur ce forum que je suis souvent (où je trouve beaucoup de solutions à mes problèmes, MERCI).

Je vais exposer mon problème.

Je développe une appli avec interface WEB. Lors de la saisie dans un formulaire, lorsque je remplis le champs "code pays", et que je passe au suivant, une fenetre DHTML se positionne sur mon formulaire. Il est composé d'une liste <select> à choix unique contenant les différents code pays et le pays associé (et d'autres infos).
Dans le cahier des charges, il est nécessaire de respecter la mise en forme de l'appli d'origine (en fait on redéveloppe une appli existante).

Dans l'appli d'origine (en C++), la liste des pays ce présente de la manière suivante :

Code++++PAYS+++++++INFO1++INFO2++INFO3 (<= ce sont les entêtes)

(début de la liste de choix)

FR++++++FRANCE++++++ EEE+++++1++++++1
GB+GRANDE-BRETAGNE+++DDD+++++2++++++2
etc....

Il faut remplacer les '+' par des blanc.

En gros, j'aimerai à que ma liste de choix donne l'illusion de colonnes.

J'ai testé de mettre des div avec un style width fixe, mais déjà, sémantiquement, c'est pas très beau (un div dans un option Smiley ohwell ). Pire, j'ai même essayé de faire un tableau dans chaque option. Et là horreur.

Sachant que les span ne prennent pas de largeur fixe, je sais plus trop quoi faire. Si vous pouviez m'aider, vous m'enleveriez une épine du pied.

Merci d'avance.
Modifié par trigun (23 Nov 2005 - 17:07)
Administrateur
Bonjour trigun et bienvenue ici,

Puisqu'il s'agit, comme tu le dis, d'une question de mise en forme et non de structure HTML, je déplace ce sujet dans le salon... "CSS et mise en forme" Smiley cligne
Salut,

j'ai une petite idée mais ça tient plus du bidouillage:

Déjà il faut que tu utilises une police à largeur de caractère fixe... genre font system...

Ensuite coté serveur, tu récupères la longueur de chaque mot et tu insères le nombre d'espaces nécessaires pour que le nombre de lettres du mot + le nombre d'espaces après le mot , soit fixe...

Bref c'est un idée un peu à la con mais au moins t'es sur d'arriver à faire ce que tu veux Smiley biggol

Bon courage
Oui.
Il ne s'agit donc pas d'un problème de mise en forme CSS, car il ne me semble pas qu'on puisse personnaliser de manière relativement élaborée le contenu d'un <option>.
Déjà, désolé d'avoir mal placé le sujet raphael (au passage, il me semble que c'est toi l'auteur de ce fabuleux livre sur les CSS que je me suis empresser d'acheter des sa sortie. Encore Bravo)
J'ai hésité à placer le topic dans CSS ou HTML, j'ai fait le mauvais choix Smiley langue


Sinon, au niveau des solutions, j'ai eu la même idée que SuD au final.

En gros, je fais la concatenation de 5 valeurs. Les valeurs 1,3,4,5 ont toujours la même longueur. Seul la 2 change. J'ai donc noté la longueur maximale que pouvait prendre cette valeur (dans la Base de données). Du côté serveur, j'ai formaté cette valeur en soustrayant (c'est français ???) la longueur max par la longueur de la valeur. Le résultat me donne le nombre de blancs à concatener à ma valeur 2.
Bien sûr, comme le dit SuD, il faut utiliser une police à largeur de caractère fixe.

J'ai pris la peine de bien décrire mon problème et ma solution pas pour me la jouer (je pense que les membres de ce forum sont bien plus expérimenté que moi), mais au cas où quelqu'un rencontrerait le même problème.

On dira que ce post aura été mon baptème. Je pense venir régulièrement sur ce forum fort agrèable, utile et sérieux.

Merci pour les réponses rapides également.