Supprimer le bouton X du champ libre de IE10 sur certaines entrées?

C’est une fonctionnalité utile, certes, mais existe-t-il un moyen de le désactiver? Par exemple, si le formulaire est un champ de texte unique et qu’il contient déjà un bouton “Effacer”, il est superflu d’avoir le X. Dans ce cas, il serait préférable de le supprimer.

Peut-on le faire et si oui, comment?

Style du pseudo-élément ::-ms-clear pour la boîte:

 .someinput::-ms-clear { display: none; } 

J’ai trouvé qu’il vaut mieux définir la width et la height à 0px . Sinon, IE10 ignore le remplissage défini dans le champ – padding-right – qui visait à empêcher le texte de taper sur l’icône “X” que j’ai superposée dans le champ de saisie. Je suppose que IE10 applique en interne le padding-right de padding-right de l’entrée au pseudo-élément ::--ms-clear et que cacher le pseudo-élément ne restaure pas la valeur de padding-right input à l’ input .

Cela a fonctionné mieux pour moi:

 .someinput::-ms-clear { width : 0; height: 0; } 

J’appliquerais cette règle à tous les champs de saisie de type text, elle n’a donc pas besoin d’être dupliquée plus tard:

 input[type=text]::-ms-clear { display: none; } 

On peut même être moins précis en utilisant uniquement:

 ::-ms-clear { display: none; } 

J’ai utilisé le plus tard avant d’append cette réponse, mais j’ai pensé que la plupart des gens préféreraient être plus précis que cela. Les deux solutions fonctionnent bien.

Vous devriez choisir ::-ms-clear ( http://msdn.microsoft.com/en-us/library/windows/apps/hh465740.aspx ):

 ::-ms-clear { display: none; } 

Et vous avez également ::-ms-reveal pseudo-élément ::-ms-reveal pour le champ mot de passe:

 ::-ms-reveal { display: none; } 

Je pense que cela vaut la peine de noter que tous les styles et les solutions basées sur CSS ne fonctionnent pas lorsqu’une page est 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 s’exécuter en mode de compatibilité, vous pouvez être bloqué par l’affichage X.

Dans mon cas, je travaille avec des contrôles liés aux données de tiers et notre solution consistait à gérer l’événement “onchange” et à effacer le magasin de sauvegarde si le champ est désactivé avec le bouton x.