KWALIFIKACJA INF3 - TEST WIEDZY NR 2

PYTANIE NR 36.
Rozważ następujący scenariusz: Tworzysz aplikację internetową i chcesz zastosować styl CSS do specyficznych elementów na stronie, ale nie do innych. Które z poniższych rozwiązań jest najbardziej odpowiednie?
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Klasa CSS służy do oznaczania wielu elementów, które mają współdzielić styl, ale nie musi obejmować wszystkich elementów danego typu. Identyfikator powinien być unikalny w dokumencie, selektor tagu obejmie wszystkie takie znaczniki, a JavaScript nie jest podstawowym narzędziem do samego nadawania stylów.

Pełne wyjaśnienie:

W opisanym scenariuszu chodzi o to, aby zastosować styl do wybranych elementów, ale nie do wszystkich podobnych elementów na stronie. Najbardziej typowym i właściwym narzędziem w CSS jest wtedy klasa, ponieważ:

  • klasę można przypisać wielu elementom,
  • umożliwia grupowanie elementów według roli/wyglądu (np. "przycisk", "ostrzeżenie"),
  • nie narzuca unikalności i nie "zamyka" rozwiązania do jednego elementu.

Odpowiedź "Użyj identyfikatora CSS." bywa wybierana, bo selektor identyfikatora jest często kojarzony jako "dokładny". Jednak w praktyce id powinno identyfikować element unikalny w dokumencie. Używanie id do stylowania wielu elementów utrudnia ponowne użycie stylów i może prowadzić do niepoprawnej struktury dokumentu.

Odpowiedź "Użyj tagu HTML." oznaczałaby stylowanie selektorem znacznika (np. wszystkich akapitów lub wszystkich list). To przeczy warunkowi "nie do innych", bo selektor tagu obejmuje wszystkie elementy danego typu na stronie (o ile nie zastosuje się dodatkowych ograniczeń).

Odpowiedź "Użyj JavaScript." nie jest właściwa jako podstawowe rozwiązanie. JavaScript może dynamicznie dodawać/usuwać klasy lub style inline, ale do samego definiowania wyglądu i utrzymania spójności najlepiej używać CSS. Dobra praktyka: logika w JavaScript, a prezentacja w CSS, najczęściej poprzez przełączanie klas.

Wskazówka egzaminacyjna: jeśli pytanie sugeruje "wiele elementów, ale nie wszystkie", najczęściej właściwa jest klasa. Jeśli chodzi o "jeden, unikalny element" (np. główny kontener), wtedy rozważa się id, ale nadal ostrożnie, by nie podnosić niepotrzebnie specyficzności selektorów.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Klasa CSS to nazwa przypisana elementom (atrybut class), która pozwala stylować wybrane elementy wspólnymi regułami. Ten sam styl można nadać wielu elementom jednocześnie, bez wpływu na inne elementy tego samego typu.
class można stosować wielokrotnie na stronie (wiele elementów może mieć tę samą klasę). id powinno być unikalne dla jednego elementu w dokumencie. W CSS selektor id jest też zwykle bardziej specyficzny.
Id stosuje się, gdy trzeba jednoznacznie wskazać pojedynczy element (np. kotwicę linku, element do powiązania z etykietą, fragment strony do przewijania). Do wielokrotnie powtarzających się stylów praktyczniejsze są klasy.
Selektor znacznika (np. dla akapitu) obejmuje wszystkie elementy danego typu w dokumencie. Jeśli chcesz ostylować tylko część z nich, łatwo wprowadzić niepożądane zmiany w innych miejscach strony. Klasy pozwalają ograniczyć zasięg.
Najczęściej nie. Style definiuje się w CSS, a JavaScript służy do logiki i interakcji. Typowy wzorzec to przełączanie klas na elementach (dodawanie/usuwanie nazw klas), dzięki czemu wygląd nadal kontroluje CSS.
Specyficzność decyduje, które reguły CSS "wygrają", gdy kilka pasuje do elementu. Selektory z id mają zwykle wyższą specyficzność niż klasy, co może utrudniać nadpisywanie stylów i prowadzić do "walki" w CSS.
Klasy stosuje się do komponentów i wariantów UI, np. przycisków, komunikatów, siatek i stanów (aktywny/nieaktywny). Ułatwiają ponowne użycie stylów i utrzymanie projektu, bo jedna klasa może opisywać rolę elementu.
Częsty błąd to wybór id "bo jest dokładniejsze", mimo że zadanie dotyczy wielu elementów. Inny błąd to wybór selektora tagu, co obejmuje wszystkie elementy danego typu. Warto czytać uważnie: "wybrane" zwykle oznacza klasę.
Stosuj nazwy opisujące rolę lub znaczenie elementu (np. przycisk, alert), a nie wygląd zależny od projektu. Unikaj zbyt ogólnych nazw. Pomagają też konwencje (np. z myślnikami), by klasy były spójne w całym projekcie.
Najczęściej klasa CSS. Możesz przypisać tę samą klasę różnym tagom i uzyskać spójny wygląd (np. link i przycisk). Selektory tagów ograniczają się do jednego typu elementu, a id nie nadaje się do wielu powtórzeń.
info

To pytanie poprawnie rozwiązuje 56% zdających egzamin. średnie

Specjaliści zwracają uwagę: "Klasa CSS służy do oznaczania wielu elementów, które mają współdzielić styl, ale nie musi obejmować wszystkich elementów danego typu."

Źródła:

  • MDN Web Docs: CSS selectors — https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_selectors (accessed 2026-02-27)
  • MDN Web Docs: HTML global attribute "class" — https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/class (accessed 2026-02-27)
  • MDN Web Docs: HTML global attribute "id" — https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/id (accessed 2026-02-27)

Materiały:

  • Dokumentacja MDN: selektory CSS (wprowadzenie i przykłady)
  • Dokumentacja MDN: atrybuty globalne HTML (class i id)
  • Ćwiczenia: refaktoryzacja arkusza CSS — zamiana selektorów tagów na klasy

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego