C'est une fonctionnalité utile, bien sûr, mais existe-t-il un moyen de la désactiver? Par exemple, si le formulaire est un champ de texte unique et qu’il comporte déjà un bouton "effacer", il est superflu d’avoir également le X. Dans ce cas, il serait préférable de le supprimer.
Peut-on le faire, et si oui, comment?
Style le pseudo-élément ::-ms-clear
pour la boîte:
_.someinput::-ms-clear {
display: none;
}
_
J'ai trouvé qu'il était préférable de régler les paramètres width
et height
sur 0px
. Sinon, IE10 ignore le remplissage défini dans le champ - padding-right
- destiné à empêcher le texte de taper par-dessus l'icône "X" superposée dans le champ de saisie. Je suppose que IE10 applique en interne le padding-right
de l'entrée au pseudo-élément ::--ms-clear
et masquer le pseudo-élément ne restaure pas la valeur padding-right
dans le input
.
Cela a mieux fonctionné pour moi:
.someinput::-ms-clear {
width : 0;
height: 0;
}
J'appliquerais cette règle à tous les champs de saisie de type text, il ne sera donc pas nécessaire de la dupliquer ultérieurement:
input[type=text]::-ms-clear { display: none; }
On peut même être moins précis en utilisant simplement:
::-ms-clear { display: none; }
J'ai utilisé ce dernier avant même d'ajouter cette réponse, mais je pensais que la plupart des gens préféreraient être plus spécifiques que cela. Les deux solutions fonctionnent bien.
Vous devez styler pour ::-ms-clear
( http://msdn.Microsoft.com/en-us/library/windows/apps/hh465740.aspx ):
::-ms-clear {
display: none;
}
Et vous appelez également le pseudo-élément pour le champ mot de passe pour ::-ms-reveal
:
::-ms-reveal {
display: none;
}
Je pense qu'il convient de noter que toutes les solutions de style et de CSS ne fonctionnent pas lorsqu'une page est exécutée en mode de compatibilité. Le rendu en mode de compatibilité ignore l'élément :: - ms-clear, même si le navigateur affiche le x.
Si votre page doit fonctionner en mode de compatibilité, il est possible que vous soyez bloqué avec l'affichage de X.
Dans mon cas, je travaille avec des contrôles liés aux données tiers et notre solution consistait à gérer l'événement "onchange" et à vider le magasin de support si le champ est effacé avec le bouton x.