KWALIFIKACJA INF3 - STYCZEŃ 2021

PYTANIE NR 29.
Który selektor formatuje akapity tekstu o klasie tekst oraz element blokowy o ID obrazki?
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Selektor
p.tekst
wskazuje akapity <p> mające klasę "tekst", a
div#obrazki
wskazuje element <div> o identyfikatorze "obrazki". Przecinek w CSS oznacza grupowanie selektorów, więc jedna reguła formatuje oba wskazane elementy jednocześnie.

Pełne wyjaśnienie:

W CSS, aby poprawnie wskazać elementy do formatowania, trzeba rozróżnić trzy rzeczy: typ elementu (np. p, div), klasę (zapis z kropką) oraz identyfikator (zapis z #).

Odpowiedź p.tekst, div#obrazki jest poprawna, ponieważ:

  • p.tekst
    oznacza: "wszystkie elementy p, które mają klasę tekst". Kropka . w selektorze łączy nazwę elementu z nazwą klasy.
  • div#obrazki
    oznacza: "element div o identyfikatorze obrazki". Znak # wskazuje atrybut id.
  • Przecinek między selektorami tworzy listę selektorów (grupowanie). Jedna reguła CSS zastosuje się do każdego selektora z listy niezależnie.

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

  • p#tekst, div.obrazki
    odwraca znaczenie atrybutów:
    p#tekst
    wymaga id=tekst (nie klasy), a
    div.obrazki
    wymaga klasy obrazki (nie id). To nie odpowiada treści pytania.
  • p.tekst + div#obrazki
    używa kombinatora +, czyli selektora "sąsiedniego brata". Taki zapis wybiera element
    div#obrazki
    tylko wtedy, gdy występuje bezpośrednio po
    p.tekst
    w drzewie DOM. Pytanie nie stawia warunku sąsiedztwa, tylko mówi o formatowaniu dwóch niezależnych elementów.
  • p#tekst + div.obrazki
    ma dwa problemy naraz: myli id z klasą (
    p#tekst
    ,
    div.obrazki
    ) oraz dodatkowo wprowadza warunek sąsiedztwa przez +. To czyni selektor jeszcze bardziej niezgodnym z opisem.

Wskazówka egzaminacyjna: jeśli w pytaniu trzeba wskazać "element X oraz element Y" bez relacji między nimi, najczęściej używa się przecinka (grupowanie). Kombinatory typu +, > czy spacja stosuje się dopiero, gdy pytanie opisuje relację w strukturze dokumentu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Zapis p.tekst wybiera tylko te elementy p, które mają klasę tekst (czyli atrybut class zawiera "tekst"). Kropka wskazuje klasę, a litera p ogranicza wybór do akapitów.
Selektor div#obrazki wybiera element div o identyfikatorze obrazki (atrybut id równy "obrazki"). Znak # jest używany wyłącznie do identyfikatorów.
Przecinek tworzy listę selektorów (grupowanie). Reguła CSS zadziała dla każdego selektora z listy niezależnie, np. p.tekst, div#obrazki { ... } sformatuje zarówno akapity z klasą, jak i wskazany element o id.
W składni selektorów CSS znak # jest standardowym oznaczeniem selektora identyfikatora (id). Pozwala wybrać element o konkretnym id, które w dobrze zaprojektowanym HTML powinno być unikatowe w obrębie dokumentu.
W selektorach CSS kropka . oznacza klasę, np. .tekst. Gdy zapiszesz p.tekst, zawężasz wybór do elementów p z tą klasą. Kropka nie służy do id (do tego jest #).
Operator + to kombinator "sąsiedni brat" (adjacent sibling). Wybiera element po prawej stronie tylko wtedy, gdy występuje bezpośrednio po elemencie z lewej strony w kodzie HTML, na tym samym poziomie zagnieżdżenia.
Stosuje się go, gdy pytanie opisuje relację w strukturze DOM, np. "sformatuj element, który występuje bezpośrednio po nagłówku" albo "po akapicie z klasą…". Jeśli pytanie mówi o dwóch niezależnych elementach, zwykle właściwsze jest grupowanie przecinkiem.
.tekst wybiera elementy mające klasę "tekst" (class), a #tekst wybiera element o identyfikatorze "tekst" (id). Klasa może wystąpić na wielu elementach, a id powinno być unikatowe w dokumencie.
Najczęstsze pomyłki to: zamiana . z #, dopisywanie niewłaściwego typu elementu (np. p zamiast div), oraz użycie kombinatora (np. +) mimo że pytanie nie opisuje relacji sąsiedztwa. Warto analizować słowa "klasa" i "ID".
Użyj narzędzi deweloperskich (Inspect/DevTools). Zaznacz element i sprawdź w panelu stylów, czy reguła pasuje. Możesz też w konsoli przetestować dopasowanie, wyszukując elementy po selektorze w drzewie DOM.
info

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

Według specjalistów z branży: "Selektor p.tekst wskazuje akapity &lt;p&gt; mające klasę "tekst", a div#obrazki wskazuje element &lt;div&gt; o identyfikatorze "obrazki"."

Źródła:

  • MDN Web Docs: CSS selectors – Class selectors (syntax and meaning), https://developer.mozilla.org/en-US/docs/Web/CSS/Class_selectors - accessed 2026-03-01
  • MDN Web Docs: CSS selectors – ID selectors (syntax and meaning), https://developer.mozilla.org/en-US/docs/Web/CSS/ID_selectors - accessed 2026-03-01
  • MDN Web Docs: Selector list (grouping selectors with comma), https://developer.mozilla.org/en-US/docs/Web/CSS/Selector_list - accessed 2026-03-01

Materiały:

  • Dokumentacja MDN dotycząca selektorów CSS (class selectors, id selectors, selector list)
  • Specyfikacja selektorów CSS (Selectors Level 3/4) – przegląd składni i kombinatorów
  • Ćwiczenia praktyczne: pisanie reguł CSS dla klas i identyfikatorów w prostym dokumencie HTML

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego