KWALIFIKACJA INF3 - STYCZEŃ 2017

PYTANIE NR 8.
W języku CSS zdefiniowano następujące formatowanie.

Kolorem czerwonym zostanie zapisany

Ilustracja przedstawia fragment kodu CSS, który definiuje formatowanie dla elementu HTML.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Selektor potomka zapisany jako "h1 i" wybiera tylko elementy <i> znajdujące się wewnątrz nagłówka <h1>. Właściwość color: red zadziała więc na fragment kursywą w nagłówku pierwszego stopnia, a nie na cały <h1> ani na wszystkie <i> w dokumencie.

Pełne wyjaśnienie:

W CSS zapis z odstępem między selektorami oznacza selektor potomka (descendant selector). Reguła "h1 i { color: red; }" nie dotyczy całego nagłówka <h1>, tylko wskazuje: znajdź elementy <i> będące potomkami elementu <h1> (potomkami na dowolnym poziomie zagnieżdżenia).

Dlatego poprawne jest stwierdzenie, że czerwony kolor otrzyma tylko tekst pochylony (czyli zawartość elementu <i>) znajdujący się wewnątrz nagłówka pierwszego stopnia. Przykładowo w HTML: <h1>Tekst normalny <i>tekst pochylony</i> tekst normalny</h1> — czerwony będzie wyłącznie fragment w <i>.

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

  • Stwierdzenie o "tekście pochylonym we wszystkich poziomach nagłówków" byłoby prawdziwe dla selektora obejmującego różne nagłówki (np. h1 i, h2 i itd.) lub dla samego "i" bez ograniczenia do <h1>. Tutaj ograniczenie do <h1> jest kluczowe.
  • Opis mówiący o "całym tekście nagłówka pierwszego stopnia" pasowałby do reguły "h1 { color: red; }", ale nie do "h1 i". W selektorze potomka styl nie "rozlewa się" na rodzica.
  • Twierdzenie, że czerwony będzie "cały tekst pochylony niezależnie od miejsca" odpowiadałoby selektorowi "i { color: red; }". W badanej regule element <i> musi znajdować się wewnątrz <h1>, więc kursywa w akapicie <p> nie zostanie objęta.

Wskazówka egzaminacyjna: zwracaj uwagę na spację i przecinek. Spacja oznacza relację zagnieżdżenia (potomek), a przecinek wprowadza listę niezależnych selektorów (grupowanie).

Dodatkowe pytania

Dodatkowe pytania (FAQ):
To selektor potomka (descendant selector). Oznacza: wybierz wszystkie elementy <i> znajdujące się wewnątrz elementu <h1> (na dowolnym poziomie zagnieżdżenia), a następnie zastosuj do nich deklaracje z bloku stylu.
Spacja nie jest "ozdobą" — to operator relacji. W selektorze potomka wskazuje zagnieżdżenie elementów w HTML/DOM. "h1 i" działa tylko na <i> w środku <h1>, a nie na wszystkie elementy osobno.
"h1 i" wybiera wyłącznie <i> wewnątrz <h1>. Natomiast "h1, i" to grupowanie selektorów: styl zostanie zastosowany do całych nagłówków <h1> oraz do wszystkich elementów <i> w dokumencie.
Nie. Zabarwione zostaną tylko elementy <i> będące potomkami <h1>. Aby zabarwić cały nagłówek, selektor musiałby wskazywać bezpośrednio <h1>, np. "h1 { color: red; }".
Nie, bo selektor wymaga, aby <i> znajdował się wewnątrz <h1>. Kursywa w innych miejscach strony (np. w <p>, <div>) nie spełnia warunku zagnieżdżenia i pozostanie w kolorze wynikającym z innych reguł.
Użyj DevTools (Narzędzia deweloperskie): zaznacz element na stronie i przejdź do zakładki stylów. Zobaczysz, które reguły CSS pasują do elementu oraz z jakiego selektora pochodzą. To najszybszy sposób weryfikacji działania "h1 i".
Specyficzność to "waga" selektora decydująca o tym, która reguła wygrywa przy konflikcie. Selektor "h1 i" ma większą specyficzność niż samo "i", więc może nadpisać prostsze reguły. W tym zadaniu ważne jest głównie, że selektor ogranicza zakres do <i> w <h1>.
Najczęściej: ignorowanie spacji, mylenie jej z przecinkiem, zakładanie że styl dotyczy rodzica (np. całego <h1>), oraz przenoszenie działania na wszystkie <i> w dokumencie. Pomaga rysowanie prostego drzewka DOM i sprawdzenie, kto jest potomkiem kogo.
Gdy chcesz stylować elementy tylko w określonym kontekście, bez dodawania klas. Przykładowo "nav a" styluje linki wyłącznie w nawigacji, a listy w treści strony pozostają nietknięte. To porządkuje CSS i zmniejsza ryzyko niechcianych efektów ubocznych.
Ćwicz na krótkich przykładach HTML i dopisuj selektory: element, potomek (spacja), dziecko (>), grupowanie (przecinek). Po każdej zmianie sprawdzaj wynik w DevTools. Na egzaminie zawsze czytaj selektor od prawej strony: "co styluję?" i dopiero "w jakim kontekście?".
info

Statystycznie 58% uczniów zna prawidłową odpowiedź. średnie

W praktyce zawodowej kluczowe jest to, że selektor potomka zapisany jako "h1 i" wybiera tylko elementy &lt;i&gt; znajdujące się wewnątrz nagłówka &lt;h1&gt;.

Źródła:

  • W3C, Selectors Level 3 – sekcja "Descendant combinator" (white space between selectors), https://www.w3.org/TR/selectors-3/ (dostęp: 2026-02-27)
  • W3C, Selectors Level 4 – sekcja o kombinatorach, w tym descendant combinator, https://www.w3.org/TR/selectors-4/ (dostęp: 2026-02-27)
  • MDN Web Docs, "Descendant combinator" (CSS selectors), https://developer.mozilla.org/en-US/docs/Web/CSS/Descendant_combinator (dostęp: 2026-02-27)

Materiały:

  • Dokumentacja MDN Web Docs: selektory CSS i selektor potomka
  • Specyfikacja W3C Selectors (Level 3/4) – część o descendant combinator
  • Ćwiczenia praktyczne: tworzenie prostych stron HTML i testowanie selektorów w DevTools

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego