Wenn ein HTML-Element fokussiert ist (derzeit ausgewählt / mit Registerkarten versehen), wird es von vielen Browsern (zumindest Safari und Chrome) blau umrandet.
Für das Layout, an dem ich arbeite, ist dies ablenkend und sieht nicht richtig aus.
<input type="text" name="user" class="middle" id="user" tabindex="1" />
Firefox scheint dies nicht zu tun oder lässt mich es zumindest kontrollieren mit:
border: x;
Wenn mir jemand sagen kann, wie der IE funktioniert, wäre ich neugierig.
Es wäre schön, Safari dazu zu bringen, dieses kleine Stückchen Fackel zu entfernen.
input:focus, textarea:focus {outline: none;}
select:focus {outline:none;}
<button>
Tag, das unter anderem von jQuery UI und Twitter Bootstrap verwendet wirdbutton: focus
. Der Vollständigkeit halber würde ich es der Liste hinzufügen .button, button:focus { outline:none; }
So entfernen Sie es von allen Eingängen
quelle
Dies ist ein alter Thread, aber als Referenz ist zu beachten, dass das Deaktivieren der Gliederung eines Eingabeelements nicht empfohlen wird, da dies die Zugänglichkeit behindert.
Die Gliederungseigenschaft gibt es aus einem Grund - sie gibt Benutzern einen klaren Hinweis auf den Tastaturfokus. Weitere Informationen und Quellen zu diesem Thema finden Sie unter http://outlinenone.com/.
quelle
Only thing is that you won't be able to see the focus(outline focus) on it
- und genau das ist mein Punkt. Durch Entfernen des Umrisses wird die visuelle Anzeige des Fokusereignisses deaktiviert , nicht des tatsächlichen Ereignisses. Wenn Sie die visuelle Anzeige entfernen, wird es für Menschen mit Behinderungen, die sich auf diese Anzeige verlassen, schwieriger.outline:none;
) bevorzugen, ohne die Auswirkungen zu berücksichtigen. Nur weil etwas einfach ist und Zeit spart, heißt das nicht, dass es die beste Vorgehensweise ist :)Dies ist ein häufiges Anliegen.
Der Standard Umriss , dass Browser machen ist hässlich.
Siehe dies zum Beispiel:
Code-Snippet anzeigen
Die häufigste "Korrektur", die am meisten empfohlen wird, ist
outline:none
- was bei falscher Verwendung - eine Katastrophe für die Barrierefreiheit.Also ... was nützt der Umriss überhaupt?
Ich habe eine sehr trocken geschnittene Website gefunden, die alles gut erklärt.
Ok, probieren wir das gleiche Beispiel wie oben aus und
TAB
navigieren jetzt mit der Taste.Code-Snippet anzeigen
Beachten Sie, wie Sie erkennen können, wo sich der Fokus befindet, ohne auf die Eingabe zu klicken.
Versuchen
outline:none
wir es jetzt mit unserem Vertrauenswürdigen<input>
Verwenden Sie also erneut die
TAB
Taste, um nach dem Klicken auf den Text zu navigieren und zu sehen, was passiert.Code-Snippet anzeigen
Sehen Sie, wie es schwieriger ist, herauszufinden, wo der Fokus liegt? Das einzige Hinweiszeichen ist das Blinken des Cursors. Mein Beispiel oben ist zu simpel. In realen Situationen hätten Sie nicht nur ein Element auf der Seite. Etwas mehr in dieser Richtung.
Code-Snippet anzeigen
Vergleichen Sie das jetzt mit derselben Vorlage, wenn wir die Gliederung beibehalten:
Code-Snippet anzeigen
Wir haben also Folgendes festgestellt
Was ist die Antwort?
Entfernen Sie den hässlichen Umriss und fügen Sie Ihre eigenen visuellen Hinweise hinzu, um den Fokus anzuzeigen.
Hier ist ein sehr einfaches Beispiel dafür, was ich meine.
Ich entferne den Umriss und füge einen unteren Rand hinzu : focus und : active . Ich entferne auch die Standardränder oben, links und rechts, indem ich sie auf transparent stelle : Fokus und : Aktiv (persönliche Präferenz)
Code-Snippet anzeigen
Also versuchen wir den obigen Ansatz mit unserem "realen" Beispiel von früher:
Code-Snippet anzeigen
Dies kann durch die Verwendung externer Bibliotheken erweitert werden, die auf der Idee aufbauen, die "Gliederung" zu ändern, anstatt sie wie Materialise vollständig zu entfernen
Sie können mit etwas enden, das nicht hässlich ist und mit sehr wenig Aufwand funktioniert
Code-Snippet anzeigen
quelle
Das verwirrte mich einige Zeit, bis ich entdeckte, dass die Linie weder ein Rand noch ein Umriss war, sondern ein Schatten. Um es zu entfernen, musste ich Folgendes verwenden:
quelle
Sie können CSS verwenden, um das zu deaktivieren! Dies ist der Code, mit dem ich den blauen Rand deaktiviere:
Dadurch wird der blaue Rand entfernt!
Dies ist ein funktionierendes Beispiel: JSfiddle.net
Ich hoffe es hilft!
quelle
Das Entfernen aller Fokusstile ist für die Barrierefreiheit und Tastaturbenutzer im Allgemeinen schlecht. Aber Konturen sind hässlich und die Bereitstellung eines benutzerdefinierten, fokussierten Stils für jedes einzelne interaktive Element kann ein echtes Problem sein.
Der beste Kompromiss, den ich gefunden habe, besteht darin, die Gliederungsstile nur dann anzuzeigen, wenn wir feststellen, dass der Benutzer die Tastatur zum Navigieren verwendet. Wenn der Benutzer die Tabulatortaste drückt, werden die Umrisse angezeigt, und wenn er die Maus verwendet, werden sie ausgeblendet.
Es hindert Sie nicht daran, benutzerdefinierte Fokusstile für einige Elemente zu schreiben, bietet jedoch zumindest eine gute Standardeinstellung.
So mache ich es:
quelle
click
Zuhörer ist eine nette Geste.Ich habe alle Antworten ausprobiert und konnte meine immer noch nicht dazu bringen, auf Mobile zu arbeiten , bis ich sie gefunden habe
-webkit-tap-highlight-color
.Also, was für mich funktioniert hat ist ...
quelle
Verwenden Sie diesen Code:
quelle
Die einzige Lösung, die bei mir funktioniert hat
quelle
Keine der Lösungen hat in Firefox für mich funktioniert.
Die folgende Lösung ändert den Rahmenstil im Fokus für Firefox und setzt den Umriss für andere Browser auf "Keine".
Ich habe den Fokusrand effektiv von einem 3px blauen Leuchten auf einen Randstil umgestellt, der dem Rand des Textbereichs entspricht. Hier sind einige Randstile:
Gestrichelter Rand (Rand 2px rot gestrichelt):
Keine Grenze! (Rand 0px):
Textbereich Rand (Rand 1px durchgehend grau):
Hier ist der Code:
quelle
Sie können dies auch versuchen
oder
quelle
Sie können den orangefarbenen oder blauen Rand (Umriss) um Text- / Eingabefelder entfernen, indem Sie Folgendes verwenden: Umriss: Keine
quelle
Entfernen Sie den Umriss, wenn der Fokus auf dem Element liegt. Verwenden Sie dazu die folgende CSS-Eigenschaft:
Diese CSS-Eigenschaft entfernt den Umriss für alle Eingabefelder im Fokus oder verwendet die Pseudoklasse, um den Umriss des Elements mithilfe der folgenden CSS-Eigenschaft zu entfernen.
Diese Eigenschaft entfernt den Umriss für das ausgewählte Element.
quelle
Versuche dies
Dies würde sich auf Ihre Seiten auswirken
quelle