Ist es möglich, die gepunktete Linie um ein ausgewähltes Element in einem ausgewählten Element zu entfernen?
Ich habe versucht, das hinzuzufügen outline
Eigenschaft in CSS aber es hat nicht funktioniert, zumindest nicht in FF.
<style>
select { outline:none; }
</style>
Update
Bevor Sie fortfahren und die Gliederung entfernen, lesen Sie diese bitte.
http://www.outlinenone.com/
Antworten:
Ich habe eine Lösung gefunden, aber sie ist die Mutter aller Hacks. Hoffentlich dient sie als Ausgangspunkt für andere robustere Lösungen. Der Nachteil (meiner Meinung nach zu groß) ist, dass jeder Browser, der nicht unterstützt
text-shadow
aber unterstütztrgba
(IE 9), den Text nur dann rendert, wenn Sie eine Bibliothek wie Modernizr verwenden (nicht getestet, nur eine Theorie).Firefox verwendet die Textfarbe, um die Farbe des gepunkteten Rahmens zu bestimmen. Sagen Sie also, wenn Sie ...
Firefox macht den gepunkteten Rand transparent. Aber natürlich ist Ihr Text auch transparent! Also müssen wir den Text irgendwie anzeigen.
text-shadow
kommt zur Rettung:Wir setzen einen Textschatten ohne Versatz und ohne Unschärfe, so dass der Text ersetzt wird. Natürlich verstehen ältere Browser nichts davon, daher müssen wir einen Fallback für die Farbe bereitstellen:
Dies ist, wenn IE9 ins Spiel kommt: Es unterstützt,
rgba
aber keinen Textschatten, so dass Sie ein scheinbar leeres Auswahlfeld erhalten. Holen Sie sich Ihre Version von Modernizr mittext-shadow
Erkennung und tun Sie ...Genießen.
quelle
@-moz-document url-prefix() { ::-moz-focus-inner {border: none} select:-moz-focusring { color: transparent; text-shadow: 0px 0px 0px #000; } }
Nun, Duopixels Antwort ist einfach perfekt. Wenn wir noch einen Schritt weiter gehen, können wir es kugelsicher machen.
Los geht's, nur gültig für Firefox und der hässliche gepunktete Umriss um die ausgewählte Option ist verschwunden.
quelle
all
innerhalb von Übergängen ist wie das Schießen mit einer Gatling-Waffe im Fluge.Hier finden Sie eine Zusammenstellung von Lösungen zur Behebung von Stilproblemen mit Firefox-Auswahlfeldern. Verwenden Sie diesen CSS-Selektor als Teil Ihres üblichen CSS-Resets.
Die Klasse entfernt die Gliederung gemäß der Frage, aber auch alle Hintergrundbilder (da ich normalerweise einen benutzerdefinierten Dropdown-Pfeil verwende und der Dropdown-Pfeil des Firefoxes-Systems derzeit nicht entfernt werden kann). Wenn Sie ein Hintergrundbild für etwas anderes als ein Dropdown-Bild verwenden, entfernen Sie einfach die Linie
background-image: none !important;
quelle
-moz-appearance
auf setzennone
.select::-moz-focus-inner
Selektor, wodurch sie weniger effektiv sind. Deshalb bekommt dieser mein ⬆.select:-moz-focusring
zusammen mitcolor: transparent
undtext-shadow: 0 0 0 #000
entfernte die nervige Grenze auf Fokus in Firefox v63Im Allgemeinen können Formularsteuerelemente nicht mit dieser Genauigkeit formatiert werden. Mir ist kein Browser bekannt, der einen sinnvollen Bereich von Eigenschaften in allen Steuerelementen unterstützt. Das ist der Grund, warum es eine Unmenge von JavaScript-Bibliotheken gibt, die Formularsteuerelemente mit Bildern und anderen HTML-Elementen "fälschen" und ihre ursprüngliche Funktionalität mit Code emulieren:
http://ryanfait.com/resources/custom-checkboxes-and-radio-buttons/
...
quelle
Dies zielt auf alle Firefox-Versionen ab
Möglicherweise möchten Sie das! Wichtige entfernen, wenn Sie planen, dass die Gliederung auf anderen Seiten Ihrer Website angezeigt wird, die dasselbe Stylesheet verwenden.
quelle
<select onchange="this.blur();">
Wenn Sie dies verwenden, bleibt der Rahmen so lange bestehen, bis Sie ein Element aus der Liste auswählen.
quelle
Probieren Sie eines davon aus:
Referenz
quelle
a
Element, aber bei einemselect
Element nicht.Hier kommt die Lösung
quelle
10px solid red
Ich habe versucht, es einzustellen, und ich kann nicht finden, wo es angezeigt wird.Entfernen Sie den Umriss / gepunkteten Rand von Firefox All Selectable Tags.
Fügen Sie diese Codezeile in Ihr Stylesheet ein:
quelle
Randstil hinzufügen: Keine zu Ihrer Auswahl in CSS.
quelle
100% arbeiten
quelle
Dadurch wird der Fokus vom
select
Element und der Gliederung entfernt :Dies ist jedoch nicht ohne Mängel bei anderen Browsern. Sie sollten den Browser überprüfen, den der Benutzer verwendet:
quelle