Je me demande s'il est possible de supprimer la lueur bleue et jaune par défaut lorsque je clique sur une entrée de texte / zone de texte en utilisant CSS?
css
cross-browser
Alec Smart
la source
la source
Réponses:
Bien qu'il ait été avancé que conserver l'éclat / le contour est en fait bénéfique pour l'accessibilité car il peut aider les utilisateurs à voir quel élément est actuellement ciblé.
Vous pouvez également utiliser le pseudo-élément ': focus' pour cibler uniquement les entrées lorsque l'utilisateur les a sélectionnées.
Démo: https://jsfiddle.net/JohnnyWalkerDesign/xm3zu0cf/
la source
Cet effet peut également se produire sur des éléments non entrants. J'ai trouvé les travaux suivants comme une solution plus générale
Mise à jour: il n'est peut-être pas nécessaire d'utiliser le
:focus
sélecteur. Si vous avez un élément, par exemple<div id="mydiv">stuff</div>
, et que vous obteniez la lueur extérieure sur cet élément div, appliquez simplement comme d'habitude:la source
<button>
éléments, qui ne bénéficient pas particulièrement de l'éclat sur le focus car la plupart du temps vous cliquez dessus de toute façon.45.0.2454.101 m
:focus
pour le sélecteur, je mets juste leoutline-color
etoutline-style
sur le css de ma div.Sur le redimensionnement de la zone de texte dans les navigateurs Webkit:
La définition de max-height et max-width sur la zone de texte ne supprimera pas la poignée de redimensionnement visuel. Essayer:
(et oui, je suis d'accord avec "essayez d'éviter de faire quoi que ce soit qui brise les attentes de l'utilisateur", mais parfois cela a du sens, c'est-à-dire dans le contexte d'une application web)
Pour personnaliser l'aspect et la convivialité des éléments de formulaire de kit Web:
la source
none
,both
,horizontal
,vertical
etinherit
.Carl W :
Je vais vous l'expliquer:
:focus
signifie qu'il stylise les éléments mis au point. Nous mettons donc les éléments en évidence.outline-color: transparent;
signifie que la lueur bleue est transparente.outline-style: none;
fait la même chose.la source
J'ai vécu cela lors d'un
div
événement de clic et après 20 recherches, j'ai trouvé cet extrait de code qui m'a sauvé la journée.Cela désactive la mise en surbrillance des boutons par défaut dans les navigateurs mobiles Webkit
la source
C'est la solution pour les personnes qui se soucient de l'accessibilité .
Veuillez ne pas utiliser
outline:none;
pour désactiver le contour de mise au point. Vous tuez l'accessibilité du Web si vous faites cela. Il existe un moyen accessible de le faire.Consultez cet article que j'ai écrit pour expliquer comment supprimer la bordure de manière accessible.
L'idée en bref est de ne montrer la bordure du contour que lorsque nous détectons un utilisateur de clavier. Une fois qu'un utilisateur commence à utiliser sa souris, nous désactivons le contour. En conséquence, vous obtenez le meilleur des deux.
la source
Si vous souhaitez supprimer la lueur des boutons dans Bootstrap (ce qui n'est pas nécessairement mauvais UX à mon avis), vous aurez besoin du code suivant:
la source
.btn:active:focus
était nécessaire pour supprimer la lueur tout en maintenant enfoncé le bouton.Cette solution a fonctionné pour moi.
la source
parfois, il se produit des boutons, puis utilisez ci-dessous pour supprimer la ligne extérieure
la source
la source
J'ai trouvé utile de supprimer le contour sur un bouton d'entrée de type "porte coulissante", car le contour ne couvre pas le "capuchon" droit de l'image de la porte coulissante, ce qui rend l'état de la mise au point un peu chancelant.
la source
J'avais juste besoin de supprimer cet effet de mes champs de saisie de texte, et je n'ai pas pu faire fonctionner les autres techniques correctement, mais c'est ce qui fonctionne pour moi;
Testé dans Firefox et dans Chrome.
la source
Sûr! Vous pouvez également supprimer la bordure bleue de tous les éléments HTML à l'aide de *
Et
la source