Die verbleibende blaue Farbe in :: Auswahl?

8

Der CSS-Elementselektor ::selection { } soll die blaue Standardtextauswahl durch unsere eigene Text- und Hintergrundfarbe ersetzen.

Das scheint jedoch nicht immer der Fall zu sein, da ich oft Webseiten sehe, die die restliche blaue Farbe haben. Es wird nicht vollständig durch unsere eigene Farbwahl ersetzt.

====== EDIT ======

Ich denke, es ist einfacher, es mit unseren eigenen Augen zu sehen als mit einem Screenshot.

Siehe diese Seite zum Beispiel: bleachindonesia.com/2012/05/27/bleach-day

Wenn Sie auf dieser Seite versuchen, alle Elemente auszuwählen (Strg + A), wird der Text grau angezeigt. Ja, weil das CSS der Seite ::selection, ::-moz-selection { background:#59574b;color:#fdfcf5; } verwendet.

Wie Sie jedoch mit dem folgenden Screenshot sehen können, bleiben einige blaue Standardeinstellungen übrig.

Ссылка

Beachten Sie den Farbunterschied und gleichzeitig den nicht ausgewählten Teil. Es gibt einige Teile auf der Seite, die mit der blauen Standard-Auswahl ausgewählt werden, aber gleichzeitig gibt es auch andere Teile, die nicht ausgewählt werden.

Inzwischen gibt es auch diese Seite: 24ways.org/2005/swooshy-curly-quotes-without -images

Versuchen Sie erneut, alle Seiten (Strg + A) auszuwählen. Sie können sehen, dass die Auswahl perfekt kastanienbraun ist. Es gibt keine blaue Standardauswahl. Es gibt nur Teile, die nicht ausgewählt werden, aber es gibt keine blaue Standardauswahl. Wie auf dem folgenden Screenshot dargestellt:

Ссылка

Die Seite CSS? %Code%. Der einzige Unterschied zur ersten Seite besteht darin, dass RGBA und kein Hex-Code verwendet wird. Ich denke nicht, dass es dort einen Unterschied macht - es ist im Wesentlichen der gleiche Code.

Nun, was mich wundern lässt.

Warum ist auf der ersten Seite die blaue Standardauswahl weiterhin vorhanden, aber nicht auf der zweiten Seite? Und wie macht man es so perfekt wie die zweite Seite?

    
deathlock 29.09.2012, 07:18
quelle

3 Antworten

5

Offen gesagt, es ist sehr schwierig zu sagen, ob das ein fehlerhaftes Verhalten ist, obwohl ich vermuten würde, dass es sehr ähnlich aussieht. ::selection litt unter einem Mangel an richtiger Definition (und daher fehlender korrekter Implementierung und Tests), also wette ich, dass sogar Browser-Hersteller Schwierigkeiten hatten, herauszufinden, was falsch ist.

Erwähnenswert ist, dass diese Regel von der ersten Seite an gilt:

%Vor%

Scheint sehr gutartig, außer dass ::selection und ::-moz-selection fälschlicherweise so kombiniert werden, dass es in Firefox niemals funktioniert, weil es ::selection und löscht die gesamte Regel . 24ways.org zeigt die Auswahlfarbe in Firefox nicht richtig an, nicht wegen kombinierter Selektoren, sondern weil% ::-moz-selection Selektor überhaupt nicht existiert.

Warum Chrome und Safari in bestimmten Bereichen auf der ersten Website blaue Bereiche markieren, weiß ich wirklich nicht. Allerdings denke ich, Jared Farrish macht einen guten Punkt :

  

Dies repliziert das Problem in Chrome (mindestens): jsfiddle.net/RfPgt Es scheint zu sein, wenn ein Element in einem anderen verschachtelt ist Element, das selbst auswählbare Elemente hat.

    
BoltClock 29.09.2012, 11:16
quelle
1

Ich habe herausgefunden, was das verursacht. Es ist <br> , wenn du <br> in deinem Text hast, versuche es zu löschen

    
shabany 07.04.2015 12:13
quelle
-1

Ich habe diese Frage vor einiger Zeit gelesen, um eine Lösung für das gleiche Problem zu finden, aber ich habe sie nicht gefunden. Nun, selbst wenn die Frage alt ist, möchte ich die Lösung teilen, die ich gefunden habe.

Verwenden Sie einfach den universellen Selektor:

%Vor%     
koMah 11.12.2012 07:33
quelle

Tags und Links