Afficher 2 elts/option dans un tag <option>

neuf Messages postés 4 Statut Membre -  
Dalida Messages postés 7114 Statut Contributeur -
Salut,

je suis entrain de mettre en place une liste de selection de pays dans laquelle l' utilisateur pourra faire le choix d'un pays.je voudrais faire afficher dans cette liste le drapeau suivi du nom du pays grace au tag <OPTION>.

<select name="select_pays" id="select_pays">
<option value="benin"><img src="image/drapeau/20px-Flag_of_Benin.svg.png" /> Bénin</option>
<option value="burkina faco"><img src="image/drapeau/20px-Flag_of_Burkina_Faso.svg.png" /> Burkina faco</option>
</select>

Mais malheureusement c'est seulement le nom du pays qui s'affiche et nom le drapeau suivit du nom.

Quelqu'un aurait une solution pour moi?

Merci
A voir également:

1 réponse

Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Ce n'est pas un problème de nombre d'éléments dans le <option>, c'est le fait qu'un option n'accepte pas de code html. L'image est donc ignorée.

Par contre, il y a moyen de contourner le problème en utilisant des styles :
<select>
	<option value="1" style="background:url('image/drapeau/20px-Flag_of_Benin.svg.png') no-repeat; background-position:0 4px; padding-left:15px;">Bénin</option>
	<option value="2" style="background:url('image/drapeau/20px-Flag_of_Burkina_Faso.svg.png') no-repeat; background-position:0 4px; padding-left:15px;">Burkina Faso</option>
</select>
Les valeurs que j'ai données pour padding-left et background-position peuvent être changées pour améliorer l'affichage. J'éi testé avec de toutes petites images, donc j'ai dû abaisser l'image de 4px pour qu'elle soit centrée.

Voilà !

Xavier

PS : je n'ai pas testé ceci sur d'autres navigateurs que Firefox...
1
Dalida Messages postés 7114 Statut Contributeur 923
 
+1

spécification HTML 4.01

<!ELEMENT OPTION - O (#PCDATA)         -- option sélectionnable -->
<!ATTLIST OPTION
  %attrs;                              -- %coreattrs, %i18n, %events --
  selected    (selected)     #IMPLIED
  disabled    (disabled)     #IMPLIED  -- indisponible dans ce contexte --
  label       %Text;         #IMPLIED  -- à utiliser dans les menus hiérarchiques --
  value       CDATA          #IMPLIED  -- le contenu de l'élément par défaut --
  >

le type CDATA représente une séquence de caractères, issus du jeu de caractère du document, qui peut inclure des entités de caractères.
0