KWALIFIKACJA INF3 - CZERWIEC 2021 (test 2)

PYTANIE NR 21.
<div class="menu"></div> Dla przedstawionego fragmentu dokumentu HTML zdefiniowano formatowanie CSS selektora klasy "menu" tak, aby kolor tła bloku był zielony. Która definicja stylu CSS odpowiada temu formatowaniu?
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Aby nadać zielone tło elementowi <div> z klasą "menu", należy użyć selektora klasy połączonego z nazwą elementu: div.menu, a następnie ustawić właściwość background-color. Właściwość color zmienia kolor tekstu, a zapis z #menu dotyczy identyfikatora, nie klasy.

Pełne wyjaśnienie:

W podanym fragmencie HTML element ma postać <div class="menu">...</div>. Oznacza to, że:

  • typem elementu jest div,
  • atrybut class ma wartość menu, czyli element należy do klasy menu.

W CSS do wskazania klasy używa się kropki, więc selektor klasy to .menu. Jeżeli chcemy doprecyzować, że chodzi o element typu div posiadający tę klasę, stosujemy selektor złożony div.menu.

Ponieważ pytanie wymaga ustawienia koloru tła bloku, właściwą właściwością jest background-color. Dlatego poprawna definicja to div.menu { background-color: green; }. Zapis green jest poprawną nazwą koloru w CSS.

Dlaczego pozostałe propozycje nie pasują?

  • div:menu { color: green; } – zapis z dwukropkiem odnosi się do pseudoklas/pseudoelementów (np. :hover), a nie do klasy o nazwie menu. Dodatkowo color zmienia kolor tekstu, nie tła.
  • menu { background-color: rgb(0,255,0); } – to selektor typu elementu o nazwie menu. W typowym HTML nie jest to selektor dla <div class="menu">, więc nie trafi w wskazany element.
  • #menu { background-color: rgb(0,255,0); } – znak # oznacza selektor identyfikatora (id). Pasowałby do <div id="menu">, ale w treści jest class, więc to inny mechanizm.

Wskazówka egzaminacyjna: zapamiętaj skojarzenie kropka = class, kratka = id. Gdy w HTML widzisz class="...", w CSS prawie zawsze szukasz selektora z kropką.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Selektor div.menu wybiera tylko te elementy <div>, które mają klasę menu. To połączenie selektora typu (div) i selektora klasy (.menu), dzięki czemu styl nie obejmuje innych elementów z klasą menu ani innych <div> bez tej klasy.
.menu odnosi się do klasy (atrybut class), którą może mieć wiele elementów. #menu odnosi się do identyfikatora (atrybut id), który na stronie powinien być unikalny. To różne mechanizmy i mają inną specyficzność selektorów.
Właściwość background-color ustawia kolor tła obszaru elementu (np. bloku <div>). Właściwość color ustawia kolor tekstu wewnątrz elementu. To częsta pułapka: "kolor" nie oznacza automatycznie koloru tła.
Nie, bo selektor menu bez kropki oznacza selektor elementu o nazwie <menu>, a nie klasy. Dla <div class="menu"> trzeba użyć selektora klasy .menu albo selektora złożonego div.menu.
Zielony można zapisać m.in. jako rgb(0, 255, 0) albo w zapisie szesnastkowym #00ff00. To równoważne sposoby zapisu koloru. Na egzaminie ważniejsze jest jednak dobranie właściwego selektora oraz właściwości (np. background-color), niż sama forma zapisu barwy.
.menu ostyluje każdy element z klasą menu (np. <nav>, <ul>, <div>). div.menu zawęża działanie reguły tylko do <div>, co pomaga uniknąć niechcianych efektów ubocznych w innych częściach layoutu.
Tak. Atrybut class może zawierać kilka klas, np. class="menu główne". Wtedy w CSS możesz odwołać się do każdej z nich osobno (.menu) lub łączyć warunki, np. div.menu.główne, aby dopasować element spełniający oba kryteria.
Dwukropek w selektorze (div:...) jest używany do pseudoklas, np. :hover, :focus. Klasy zapisuje się kropką, np. div.menu. Dlatego div:menu nie oznacza "div z klasą menu" i w praktyce nie spełnia wymagań zadania.
Najczęściej myli się: klasę z identyfikatorem (. vs #), color z background-color (tekst vs tło) oraz selektor elementu z selektorem klasy (np. menu zamiast .menu). Pomaga sprawdzanie, czy w HTML jest class czy id.
Jeśli w HTML widzisz class="menu", w CSS szukasz selektora z kropką: .menu. Gdy dodatkowo chcesz ograniczyć styl do konkretnego typu znacznika, dopisujesz go przed klasą, np. div.menu. To prosta reguła, która działa w większości zadań egzaminacyjnych.
info

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

W praktyce zawodowej kluczowe jest to, że aby nadać zielone tło elementowi &lt;div&gt; z klasą "menu", należy użyć selektora klasy połączonego z nazwą elementu: div.menu, a następnie ustawić właściwość background-color.

Źródła:

  • MDN Web Docs: "Class selectors" (CSS selectors) – https://developer.mozilla.org/en-US/docs/Web/CSS/Class_selectors (dostęp 2026-02-27)
  • MDN Web Docs: "background-color" – https://developer.mozilla.org/en-US/docs/Web/CSS/background-color (dostęp 2026-02-27)
  • MDN Web Docs: "color" – https://developer.mozilla.org/en-US/docs/Web/CSS/color (dostęp 2026-02-27)

Materiały:

  • Dokumentacja MDN: selektory CSS (class selectors) i właściwość background-color
  • Ćwiczenia: stylowanie komponentów na stronie (menu, nagłówki, sekcje) z użyciem klas i identyfikatorów
  • Materiały o specyficzności selektorów (CSS specificity) i różnicach między .class i #id

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego