Selektory#

Selektor uniwersalny#

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
* { /* deklaracje */ }

Selektor uniwersalny (universal selector), zapisany jako nazwa kwalifikowana CSS za pomocą znaku gwiazdki (U +002, *) stanowiącej nazwę lokalną, reprezentuje nazwę kwalifikowaną elementu o dowolnym typie. Odpowiada on każdemu pojedynczemu elementowi w drzewie dokumentu w dowolnej przestrzeni nazw (włącznie z elementami bez przestrzeni nazw), jeśli żadna domyślna przestrzeń nazw nie została określona dla selektora. W przypadku określenia domyślnej przestrzeni nazw należy zapoznać się z kolejnym podrozdziałem.

Jeśli selektor uniwersalny reprezentowany przez * (tj. bez prefiksu przestrzeni nazw) nie jest jedynym składnikiem selektora złożonego lub zaraz za nim następuje pseudoelement, to znak * może zostać pominięty, a obecność selektora uniwersalnego jest dorozumiana (domyślna).

Poniższe selektory z każdej pary będą równoważne:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
*[hreflang|=en]
[hreflang|=en]

*.warning
.warning

*#myid
#myid

Tak czy inaczej zaleca się, żeby nie pomijać znaku *, przez co ryzyko błędnej interpretacji selektora zostanie obniżone, jak w przypadku div :first-child i div:first-child. Selektor div *:first-child będzie czytelniejszy i łatwiejszy do zrozumienia dla osób początkujących.

Warto przypomnieć, że selektor uniwersalny nie odgrywa żadnej roli przy wyliczaniu specyficzność.

Prosty przykład:

  1. L
  2. K
  3. T'
  4. T
  5. A
  6. O
  7. Z'
  8. Z
  9. #
<!DOCTYPE html>
<html>

<head>

	<style>

		* {color: blue;}
		div * strong {color: red;}

	</style>

</head>

<body>

	<p>Akapit ma kolor niebieski.</p>

	<div> Jakiś tekst wewnątrz DIV ma kolor niebieski
		<p>Akapit ma kolor niebieski, <strong>ale mocna emfaza ma już kolor czerwony</strong>, i znów akapit.</p>
		Jakiś tekst wewnątrz DIV ma kolor niebieski
	</div>

	<p>Akapit ma kolor niebieski.</p>

</body>

</html>

Selektor uniwersalny i przestrzenie nazw#

Selektor uniwersalny zezwala na użycie opcjonalnego komponentu przestrzeni nazw. Stosuje się go w następujący sposób:

ns|*

Reprezentuje wszystkie elementy w przestrzeni nazw ns.

*|*

Reprezentuje wszystkie elementy (niezależnie od posiadania lub braku przestrzeni nazw).

|*

Reprezentuje wszystkie elementy nienależącą do żadnej przestrzeni nazw.

*

Jeśli domyślna przestrzeń nazw nie została określona, to jest równoważny z *|*. W przeciwnym razie oznacza ns|*, gdzie ns jest domyślną przestrzenią nazw.

Selektor uniwersalny zawierający prefiks przestrzeni nazw, który nie został zadeklarowany, jest nieprawidłowym selektorem.

Specyfikacje i inne materiały#

Pasek społecznościowy

SPIS TREŚCI AKTUALNEJ STRONY

Selektory (H1) Selektor uniwersalny (H2) Selektor uniwersalny i przestrzenie nazw (H3) Specyfikacje i inne materiały (H3)