Moderní tvorba webových aplikací

O webu

Styl označeného textu

Pseudo-element ::selection umožňuje změnit styl kursorem označeného textu.

3 minuty

Označení textu pomocí selection

Výchozí styl výběru je většinou modré pozadí a bílý text. Pomocí stylu pro ::selection je možné toto chování změnit. Kromě důvodu čistě estetického, aby výběr ladil k designu stránky, existuje i praktický důvod – na stránce s modrým pozadím a bílým textem nebude standardní styl dobře vidět.

Před změnou si je dobré uvědomit, že uživatelé jsou na výchozí styl zvyklí, takže změna může přinést nejistotu.

Tento odstavec má nestandardní styl při výběru.

Některé prohlížeče – Firefox a Internet Explorer – dokáží výchozí barevný styl ::selection automaticky invertovat (bílé pozadí, modrý text), aby byl kontrastní k pozadí.

Kromě staré Opery 12 jde měnit barvu výběru i ve formulářových polích (<input>/<textarea>).

Zápis

Styl označení textu jde nastavit globálně pro celou stránku:

::selection {
  /* styly pro všechny výběry na stránce */
}

Nebo i pro zvláštní elementy.

.zvlastni-element::selection {
  /* styly pro .zvlastni-element */
}

Povolené vlastnosti

Pseudo-element ::selection má zabudovanou ochranu před příliš kreativními designéry, měnit tak jde pouze:

  • color – barva písma
  • background-color – barva pozadí (nejde použít obrázek a podobně), jde použít zápis zkratkou background
  • text-shadow – stín textu (nefunguje v IE a staré Opeře 12)

Podpora

Měnit styl označeného textu je možné od IE 9. Firefox vyžaduje použít -moz- prefix. Selektor s prefixem nelze spojit se selektorem bez něj. Tohle proto nebude fungovat:

::selection, ::-moz-selection {
  /* nebude fungovat */
}

Oba zápisy je nutné duplikovat:

::selection {
  color: yellow;
  background: red;
}
::-moz-selection {
  color: yellow;
  background: red;
}

Živá ukázka

Související články

Převod písmen na VELKÁ a malá

Převedení textu na velká nebo malá písmena.

12 minut

Možnosti stylování <iframe>

Co lze a nelze u <iframe> ovlivnit pomocí CSS a jak na změnu textu nebo barev.

10 minut

Zvýraznění aktivní sekce při rolování

Moderní způsoby zvýraznění aktivní položky navigace podle aktuální sekce – CSS i IntersectionObserver.

5 minut

CSS funkce random()

Jak v CSS generovat náhodné hodnoty pomocí random() a kdy ji použít.

6 minut

Web jecas.cz píše Bohumil Jahoda, kontakt
Seznam všech článků
2013–2025