FontAwesome dans <select> [duplicate]

Sep 24 2020

J'essaie de changer la flèche par défaut pour une liste déroulante de sélection (à droite sur la photo ci-dessous). Mon code actuel est le suivant:

<script src='https://kit.fontawesome.com/a076d05399.js'></script>

<select id="wgtmsr" style="width: 230px !important; min-width: 230px; max-width: 230px; font-size: 18px; height: 59px;" name="wgtmsr";><i class="fas fa-arrow-circle-down">

<option class="_self" selected="selected" value="#">MAKES SERVICED</option>
    
</select>

Ce qui donne les résultats suivants: aucune icône n'apparaît

Réponses

1 IvanFrolov Sep 24 2020 at 14:24

<select id="wgtmsr" style="width: 230px !important; min-width: 230px; max-width: 230px; font-size: 18px; height: 59px;" name="wgtmsr";><i class="fas fa-arrow-circle-down">

<option class="_self" selected="selected" value="#">MAKES SERVICED</option>
    
</select>

<style>
#wgtmsr {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg aria-hidden='true' focusable='false' data-prefix='fas' data-icon='arrow-circle-down' class='svg-inline--fa fa-arrow-circle-down fa-w-16' role='img' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath fill='currentColor' d='M504 256c0 137-111 248-248 248S8 393 8 256 119 8 256 8s248 111 248 248zm-143.6-28.9L288 302.6V120c0-13.3-10.7-24-24-24h-16c-13.3 0-24 10.7-24 24v182.6l-72.4-75.5c-9.3-9.7-24.8-9.9-34.3-.4l-10.9 11c-9.4 9.4-9.4 24.6 0 33.9L239 404.3c9.4 9.4 24.6 9.4 33.9 0l132.7-132.7c9.4-9.4 9.4-24.6 0-33.9l-10.9-11c-9.5-9.5-25-9.3-34.3.4z'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: 100% 50%;
  background-size: 1em;
}
</style>

L'élément <select>ne permet que les balises à l'<option> intérieur, veuillez voir ici. Puis-je utiliser des balises HTML dans les options pour sélectionner des éléments?

Si je comprends bien - vous voulez ajouter une icône à <select>, vous pouvez le faire en utilisant un arrière - plan CSS , vous pouvez utiliser svg en base64 ou pour styliser l'arrière-plan comme n'importe quel autre élément (par exemple pour utiliser une image jpg / png).
Doit également réinitialiser les styles de navigateur par défaut à l'aide deappearance: none;

MISE À JOUR
J'ai téléchargé l'icône en tant que fichier svg que vous vouliez utiliser et l'ai utilisée comme arrière-plan.
Une chose: je l'ai converti en base64 pour ne pas utiliser d'images externes, mais ce n'est pas obligatoire - comme je l'ai dit, vous pouvez l'utiliser comme fichier d'image d'arrière-plan.