Je suis en train de style de la flèche de menu déroulant d'un <select>
élément avec CSS , il fonctionne parfaitement dans Chrome/Safari:
select {
-webkit-appearance: button;
-webkit-border-radius: 2px;
-webkit-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
-webkit-padding-end: 20px;
-webkit-padding-start: 2px;
-webkit-user-select: none;
background-image: url('./select-arrow1.png') ;
background-position: center right;
background-repeat: no-repeat;
border: 1px solid #AAA;
margin: 0;
padding-top: 2px;
padding-bottom: 2px;
width: 200px;
}
Ce qui rend magnifiquement comme on le voit ici
Par cette logique, la seule chose que j'avais à faire pour que cela fonctionne dans Firefox, c'était d'ajouter tous -webkit-*
trucs en -moz-*
:
-moz-appearance: button;
-moz-border-radius: 2px;
-moz-box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.1);
-moz-padding-end: 20px;
-moz-padding-start: 2px;
-moz-user-select: none;
Il fonctionne pour les 99%, le seul problème est que par défaut, la flèche de menu déroulant ne disparaît pas et reste au-dessus de l'image d'arrière-plan comme on le voit ici
Il ressemble -moz-appearance: button;
ne fonctionne pas pour un <select>
élément. Aussi -moz-appearance: none;
n'a pas d'effet de supprimer la valeur par défaut flèche de menu déroulant.
Alors, quelle est la valeur correcte pour -moz-appearance
pour supprimer le défaut flèche de menu déroulant?
Mises à jour:
28 avril 2014: Le dessus css hack travaillé pour un couple de mois, mais depuis le début du mois d'avril 2014, ce bug est rampant en arrière dans Firefox 31.0.a1 tous les Soirs sur toutes les plateformes.