161 votes

Supprimer l'ombre interne des zones de texte sur Mobile Safari (iPhone)

Par défaut, il semble que Mobile Safari ajoute l'ombre interne supérieure à tous les champs de saisie, y compris les zones de texte. Existe-t-il un moyen de la supprimer ?

C'est particulièrement laid lorsque vous avez un fond blanc.

356voto

Lyon Points 2412

En ajoutant ce style css :

  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;

Conformément à https://developer.mozilla.org/en-US/docs/Web/CSS/appearance

28 votes

Faites attention lorsque vous ajoutez cette propriété à des sélecteurs de type checkbox et bouton radio, car elle masque les checkbox et les boutons radio ;)

14 votes

Merci pour la réponse Lyon. A propos, la meilleure façon de l'utiliser est de l'appliquer uniquement à textarea, input[type="text"], input[type="submit"] .

0 votes

N'appliquez pas non plus cette propriété à select puisqu'il ressemblera à un texte de saisie normal.

32voto

Justin Tolchin Points 53

En ajoutant le style CSS

-webkit-appearance: none;

fonctionnera, il se débarrasse de tout. Vous pouvez essayer ceci à la place :

box-shadow: none !important;

De cette façon, vous gardez la flèche vers le bas.

6 votes

Le simple ajout de la propriété box-shadow ne fonctionne pas. L'ombre interne apparaît toujours dans Safari sur iOS.

31voto

IqbalBary Points 563

Voici la solution facile

input[type=text] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

9voto

TheCrazyProfessor Points 552

Parfois, vous pouvez avoir une feuille de style là cassé la appearance: none; donc une façon de le corriger lorsque cela se produit est d'utiliser caret . La meilleure façon de procéder est de réécrire votre code et de découvrir quelle partie de votre code perturbe le style de l'interface. none

Avant d'utiliser caret vous devez savoir que cela peut vous poser des problèmes avec d'autres styles

-webkit-appearance: caret;
   -moz-appearance: caret;
     -o-appearance: caret;
        appearance: caret;

NOTE : Utilice none , caret n'est pas l'optimum.

4voto

KABA Points 121

https://stackoverflow.com/a/51626446/9287284

background-clip: padding-box;

et j'ai trouvé un commentaire plus ancien sur les mêmes réponses ici.

https://stackoverflow.com/a/29750016/9287284

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X