KWALIFIKACJA INF3 - CZERWIEC 2015

PYTANIE NR 2.
Analizując przedstawiony kod zapisany w języku HTML, można stwierdzić, że w przeglądarce
Ilustracja przedstawia fragment kodu HTML, który jest używany w kontekście egzaminu kwalifikacyjnego dla technika
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Odstęp 20 px między blokami powstaje wtedy, gdy w CSS dla jednego z elementów (np. bloku B) ustawiono margines zewnętrzny 20 px w kierunku rozdzielającym oba elementy. Margines nie "przesuwa w lewo" sam z siebie i nie oznacza automatycznie nachodzenia; tworzy przerwę między sąsiadującymi blokami.

Pełne wyjaśnienie:

W układzie blokowym HTML elementy (np. dwa <div>) domyślnie układają się jeden pod drugim. Gdy w CSS pojawia się deklaracja marginesu o wartości 20 px (np. margin-top: 20px dla drugiego elementu albo margin-bottom: 20px dla pierwszego), przeglądarka rysuje przerwę pomiędzy tymi blokami. Taka przerwa jest właśnie "oddaleniem" jednego bloku od drugiego o 20 px.

Stwierdzenie o "dolnym marginesie dla bloku B" jest zbyt szczegółowe: sam fakt, że widzimy odstęp, nie musi oznaczać, że chodzi akurat o margin-bottom bloku B. Zależnie od kodu odstęp może wynikać z marginesu górnego B, dolnego A, a czasem z mechanizmu margin collapsing (kolapsowanie marginesów) w pionie.

Interpretacja "blok A będzie przesunięty w lewo o 20 px" zwykle dotyczy sytuacji, gdy użyto właściwości wpływających na pozycję w poziomie (np. margin-left, left przy pozycjonowaniu) albo gdy zastosowano inny model układu. Sam odstęp między A i B w pionie nie oznacza przesunięcia A w lewo.

Odpowiedź o nachodzeniu bloków sugeruje użycie pozycjonowania (np. position: absolute) lub ujemnych marginesów. Przy typowym dodatnim marginesie 20 px i standardowym przepływie dokumentu elementy nie powinny na siebie zachodzić, tylko zachowują przewidziany odstęp.

  • Wskazówka egzaminacyjna: zawsze rozróżniaj "odstęp między elementami" (margin) od "wypełnienia wewnątrz elementu" (padding) i od przesunięć wynikających z pozycjonowania.
  • Praktyka: jeśli masz wątpliwość, w DevTools sprawdź model pudełkowy i podświetl obszar margin dla danego elementu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Margines (margin) to zewnętrzny odstęp wokół elementu w CSS. Służy do tworzenia przestrzeni między sąsiadującymi elementami, np. między dwoma blokami <div>. Nie zwiększa "wnętrza" elementu (to robi padding), tylko dodaje przerwę na zewnątrz.
Margin tworzy odstęp na zewnątrz elementu (między elementami). Padding tworzy odstęp wewnątrz elementu (między treścią a obramowaniem). Na egzaminie często myli się te pojęcia, a to zmienia interpretację wyglądu w przeglądarce.
Najczęściej dzieje się tak, gdy ustawiono dodatni margines 20 px rozdzielający elementy, np. margin-top: 20px dla dolnego bloku albo margin-bottom: 20px dla górnego. W układzie blokowym przeglądarka wstawi wtedy przerwę o tej wielkości.
W większości typowych przypadków tak, ale w pionie mogą wystąpić sytuacje kolapsowania marginesów (margin collapsing), gdy dwa marginesy "zlewają się" w jeden. Wtedy końcowa przerwa może odpowiadać większemu z marginesów, a nie sumie. Warto o tym pamiętać przy analizie kodu.
Przesunięcie w lewo sugerują właściwości poziome, np. margin-left (dla przesunięcia w prawo przy dodatniej wartości), albo pozycjonowanie z position i left. Sama informacja o odstępie 20 px między blokami w pionie nie oznacza przesunięcia elementu w lewo.
Nachodzenie zwykle pojawia się przy wyjęciu elementu z normalnego przepływu, np. position: absolute lub position: fixed, przy ujemnych marginesach albo błędnie dobranych wysokościach i overflow. Przy standardowym układzie blokowym i dodatnich marginesach elementy się rozdzielają, a nie nakładają.
Otwórz narzędzia deweloperskie, zaznacz element i przejdź do widoku modelu pudełkowego (box model). Zobaczysz wartości margin, border, padding i rozmiar treści. To pozwala szybko ustalić, czy przerwa wynika z margin-top, margin-bottom czy innej właściwości.
W układzie blokowym elementy (np. <div>, <p>) zajmują całą dostępną szerokość i domyślnie układają się jeden pod drugim. Dlatego odstępy pionowe między nimi najczęściej wynikają z marginesów lub paddingów, a nie z "przesuwania" w lewo/prawo.
Najczęściej myli się margin z padding, mylnie interpretuje liczbę 20 jako przesunięcie w poziomie oraz pomija margin collapsing. Częsty jest też automatyczny wniosek o nachodzeniu elementów bez sprawdzenia, czy w ogóle użyto pozycjonowania absolutnego lub ujemnych wartości.
Ćwicz na prostych przykładach z dwoma blokami <div>: zmieniaj margin-top, margin-bottom, padding i obserwuj efekt. Potem dodaj sytuacje z margin collapsing i z pozycjonowaniem. Na egzaminie liczy się umiejętność przewidywania renderowania, nie tylko definicje.
info

Statystycznie 52% uczniów zna prawidłową odpowiedź. trudne

Eksperci podkreślają: "Odstęp 20 px między blokami powstaje wtedy, gdy w CSS dla jednego z elementów (np. bloku B) ustawiono margines zewnętrzny 20 px w kierunku rozdzielającym oba elementy."

Źródła:

  • MDN Web Docs: margin (CSS) – https://developer.mozilla.org/en-US/docs/Web/CSS/margin (dostęp: 2026-03-01)
  • MDN Web Docs: Introduction to the CSS box model – https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_box_model/Introduction_to_the_CSS_box_model (dostęp: 2026-03-01)
  • MDN Web Docs: Mastering margin collapsing – https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_box_model/Mastering_margin_collapsing (dostęp: 2026-03-01)

Materiały:

  • MDN Web Docs: CSS box model oraz właściwość margin
  • MDN Web Docs: opis zjawiska margin collapsing
  • Specyfikacja CSS (sekcje o marginesach i układzie blokowym)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego