KWALIFIKACJA PGF4 - STYCZEŃ 2019

PYTANIE NR 31.
Deklaracja kodu CSS: li span {font-size:10pt; color:green;} oznacza, że wielkości 10 pt będzie
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Selektor li span jest selektorem potomka: wybiera tylko elementy <span>, które znajdują się wewnątrz elementów <li>. Zatem font-size:10pt i color:green zostaną nadane wyłącznie tekstowi w tych <span> osadzonych w <li>, a nie całym <li> ani wszystkim <span> na stronie.

Pełne wyjaśnienie:

Reguła CSS ma postać: selektor + blok deklaracji. W zapisie li span { font-size: 10pt; color: green; } kluczowe jest to, jak działa selektor li span.

"li span" to tzw. selektor potomka (descendant combinator). Oznacza: "wybierz każdy element <span>, który znajduje się gdziekolwiek wewnątrz elementu <li> (na dowolnym poziomie zagnieżdżenia)". Styl nie jest nadawany elementowi <li>, tylko elementowi po prawej stronie selektora, czyli <span>.

Dlatego poprawna odpowiedź mówi o tym, że wielkość 10 pt (oraz kolor zielony) będzie dotyczyć tylko tekstu wewnątrz wszystkich znaczników <span> znajdujących się wewnątrz znaczników <li>.

Dlaczego pozostałe odpowiedzi są błędne?

  • "tekst wewnątrz wszystkich znaczników li oraz wszystkich znaczników span" – błędnie zakłada, że reguła obejmuje oba typy elementów. Selektor nie jest listą elementów do stylowania, tylko warunkiem dopasowania dla elementu docelowego (<span>).
  • "tekst wewnątrz wszystkich znaczników span" – pomija warunek kontekstu (<span> musi być wewnątrz <li>). Gdyby styl miał dotyczyć wszystkich <span>, selektor brzmiałby po prostu span.
  • "tylko tekst wewnątrz wszystkich znaczników li znajdujących się wewnątrz znaczników span" – odwraca relację zagnieżdżenia. Zapis li span oznacza <span> w <li>, a nie <li> w <span>.

Wskazówka egzaminacyjna: czytaj selektor od lewej do prawej jako "kontekst", ale pamiętaj, że styl stosuje się do elementu po prawej stronie, który spełnia warunek bycia wewnątrz kontekstu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Oznacza, że reguła zadziała tylko dla elementów <span>, które znajdują się wewnątrz elementów <li> (np. w punktach listy). Styl nie dotyczy całego <li>, tylko tych <span> w jego wnętrzu.
W selektorze potomka A B stylowany jest element po prawej stronie (tu: B), ale tylko wtedy, gdy znajduje się wewnątrz elementu po lewej stronie (tu: A). To częsty schemat: lewa część = kontekst, prawa = cel.
Ponieważ selektor nie jest listą elementów do stylowania. li jest warunkiem/kontekstem, a nie celem. Celem jest span, więc deklaracje typu font-size i color zostaną przypisane do <span> spełniającego warunek zagnieżdżenia.
Selektor potomka obejmuje także zagnieżdżenia wielopoziomowe. Jeśli <span> znajduje się w środku <li> nawet przez inne znaczniki (np. <li><a><span>...</span></a></li>), nadal zostanie dopasowany.
Należy użyć selektora span bez kontekstu li. Wtedy reguła będzie dotyczyć wszystkich <span> w dokumencie. Dodanie li zawęża zakres tylko do tych <span>, które są wewnątrz punktów listy.
li span wybiera każdy <span> wewnątrz <li> (na dowolnym poziomie). Natomiast li > span wybiera tylko te <span>, które są bezpośrednimi dziećmi elementu <li>.
Nie. Jeśli w danym punkcie listy nie ma żadnego <span>, selektor li span nie znajdzie elementu docelowego, więc reguła nie będzie miała do czego się zastosować. Zmiany zobaczysz tylko tam, gdzie <span> faktycznie występuje.
Najczęściej myli się: (1) że styl dotyczy obu członów selektora naraz, (2) kierunek relacji (odwracanie zagnieżdżenia), (3) zakres działania (przyjmowanie, że obejmuje "wszystkie span"). Pomaga zasada: "styluje się prawa strona".
pt to jednostka punktowa kojarzona z typografią (druk). W sieci częściej spotyka się jednostki względne (np. em, rem, %) lub px, bo lepiej wspierają skalowanie. Na egzaminie najważniejsze jest jednak rozumienie selektora.
Utwórz prostą listę HTML z punktem zawierającym <span> i bez niego, dodaj regułę w arkuszu stylów, a potem użyj narzędzi deweloperskich (Inspect/DevTools). Zobaczysz, że styl pojawia się tylko na dopasowanych <span>.
info

Około 61% zdających odpowiada poprawnie na to pytanie. średnie

Według specjalistów z branży: "Selektor li span jest selektorem potomka: wybiera tylko elementy &lt;span&gt;, które znajdują się wewnątrz elementów &lt;li&gt;."

Źródła:

  • MDN Web Docs: CSS selectors – Descendant combinator, https://developer.mozilla.org/en-US/docs/Web/CSS/Descendant_combinator - accessed 2026-02-18
  • MDN Web Docs: font-size, https://developer.mozilla.org/en-US/docs/Web/CSS/font-size - accessed 2026-02-18
  • MDN Web Docs: color, https://developer.mozilla.org/en-US/docs/Web/CSS/color - accessed 2026-02-18

Materiały:

  • Dokumentacja MDN: selektory CSS i combinatory
  • Dokumentacja MDN: właściwość font-size
  • Dokumentacja MDN: właściwość color

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego