2012-11-22 8 views
1

J'essaye de faire une liste déroulante avec la taille différente parce que mes options sont dans différents groupes.Option de taille différente dans une sélection

Je peux changer la couleur du texte, la couleur de l'arrière-plan, mais pas la hauteur de l'option ni la taille de la police (je veux dire, je peux changer, mais pas 2 les séparés)

le code

<select> 
    <option class="title" disabled>Title 1</option> 
    <option>Select 1</option> 
    <option>Select 2</option> 
    <option class="title" disabled>Title 2</option> 
    <option>Select 3</option> 
</select> 

CSS

select .title 
{ 
    color:#E0E0E0; 
    font-size:12px; 
    font-weight:bold; 
    height:15px; 
    background-color:#0000FF; 
} 

select option 
{ 
    color:#0000FF; 
    font-size:24px; 
    font-weight:normal; 
    height:30px; 
    background-color:#0000FF; 
} 
+0

Oui, mais 'select option 'compte pour tous les éléments d'option et remplace' select .title'. Essayez de retourner les deux sélecteurs CSS. – feeela

+0

oui, j'ai essayé de les retourner avec aucune chance – Memes

Répondre

3

Êtes-vous au courant d'un élément appelé <optgroup> spécialement pour quelque chose comme ça?

<select> 
    <optgroup label="Title 1"> 
     <option>Select 1</option> 
     <option>Select 2</option> 
    </optgroup> 
    <optgroup label="Title 2"> 
     <option>Select 3</option> 
    </optgroup> 
</select> 

Et si vous voulez changer le optgroup textsize essayer

optgroup:before { 
    content: "Demo"; 
    font-size: 18px; 
} 

Change Size Of OPTGROUP Header Fiddle

+0

merci, maintenant je dois trouver comment les styler et ce sera parfait – Memes

+0

ok, j'ai essayé, mais ne peut toujours pas obtenir la taille de police pour travailler – Memes

+0

Voir ma réponse ci-dessous . La taille de la police ne fonctionnera pas non plus pour les optgroups. –

0

Malheureusement, les styles sont assez limités sur un grand nombre d'éléments de formulaire. La balise <option> peut avoir des styles modifiés, mais la taille de police n'en fait pas partie. Cela dépend également du navigateur que vous utilisez.

Voir cette page pour un aperçu de ce qui est possible: http://www.electrictoolbox.com/style-select-optgroup-options-css/

0

Voici comment je l'ai fait

HTML

<select> 
<optgroup label="Title 1"></optgroup> 

    <option>Select 1</option> 
    <option>Select 2</option> 

    <optgroup label="Title 2"></optgroup> 

    <option>Select 3</option> 
</select> 

CSS

select 
{ 
width: 100%; 
font-size:24px; 
} 
select optgroup 
{ 
color:#E0E0E0; 
font-size:12px; 
font-weight:bold; 
background-color:#0000FF; 
} 
select option 
{ 
color:#0000FF; 
font-weight:normal; 
background-color:#FFFFFF; 
} 

la hauteur cependant ne fonctionne pas.

+0

voulez-vous un moyen sale que d'aller pour cela, navigateur croisé n'est pas sûr à 100% http://jsfiddle.net/fEdkj/ –

+0

votre solution ne fonctionne pas sous Chrome au moins dans votre jsfiddle – Memes

+0

ce que je vous ai dit, ce n'est pas 100% cross-navigateur choses;) –

Questions connexes