Zmiana koloru zaznaczenia tekstu – właściwość CSS ::selection

Czas czytania: 2 minut

Podczas zaznaczania tekstu (lub tylko jego fragmętu) na stronie internetowej tło umieszczone bezpośrednio pod nim zmienia on kolor np. na ciemno niebieski, modrakowy (w zależności od przeglądarki internetowej).

Jest to domyśle ustawienie przeglądarki internetowej. Zazwyczaj tego koloru się na stronie nie zmienia, bo np. ludzie są do niego przyzwyczajeni. Nie oznacza to jednak, że nie można tego zrobić. Wystarczy jedynie wiedza na temat tego do jakiego elementu trzeba się odwołać w CSS.

zmiana koloru zaznaczenia tekstu w css
zmiana koloru zaznaczenia tekstu w css

Właściwość CSS ::selection

W tym przypadku chodzi o pseudoelement ::selection. Z jego pomocą możemy wpłynąć na właściwości zaznaczanego tekstu – zmieniając jego różne właściwości nie tylko samo tło. Na chwilę obecną dużo przeglądarek korzysta z tego elementu jednak nie wszystkie! Dlatego też zmiana nie będzie w nich widoczna.

Co możemy zmienić w zaznaczonym fragmencie tekstu

Właściwości CSS jakie mamy możemy wykorzystać na zaznaczonym tekście jest kilka są to:

Wszystkie powyższe właściwości są podlinkowane – dlatego jak macie chwilę możecie o nich poczytać.

Przykład – ZAZNACZ TEKST z Codepen:

See the Pen Selection color CSS ::SELECTION by Aura (@Julka85) on CodePen.0

Przykładowa deklaracja CSS dla <p> (akapitu)

p::selection {
  color:pink;
  background: green;
}
p::-moz-selection { /* dla Firefox */
    color: pink;
    background: green;
}

Właściwość ta działa poprawnie w większości przeglądarek jednak nie zawsze tak samo. W niektórych przeglądarkach nie wszystkie cechy ulegają zmianie np. zmienia się kolor tekstu a nie tło (Opera)

Komputery

ChromeOperaFirefoxIEEdge Safari
4 9.5-9.62*912 3.1

Mobilne

iOS SafariOpera
Mobile
Opera
Mini
AndroidAndroid
Chrome
Android
Firefox
No11.5No4.45955*

źródło: https://www.w3schools.com/css/css_pseudo_elements.asp

dodatkowe tagi:
zmiana koloru zaznaczonego tekstu z pomocą css, html
Jak zrobić kolorowe zaznaczenie tekstu, czcionki, fomtu
Zmiana koloru z domyślnego na inny po zaznaczeniu tekstu
selektor ::selection dla strony www, witryna internetowa

2 comments

  1. Pani Kierowniczka

    Mam pytanie – w plikach css na moim szablonie nie ma w ogóle sekcji „selection” – a bardzo zależy mi, żeby zmienić kolor zaznaczenia tekstu. Jak inaczej można do tego dojść?

    1. Aurelia

      Wartość „::selection” jest domyślna (dla danej przeglądarki) nie musi więc znajdować się w plikach CSS. Nic nie stoi jednak na przeszkodzie, żeby ją samemu dodać. W tym celu trzeba zmodyfikować style szablonu.

      Jeśli korzysta Pani z WordPress warto sprawdzić czy w ustawieniach szablonu nie ma opcji dodawania kodu CSS i dopisać tam „::selection”. Modyfikacje wprowadzane bezpośrednio w motyw mogą zostać „nadpisane” podczas aktualizacji – w efekcie trzeba je będzie ponownie wprowadzić.

Comments are closed.

%d bloggers like this: