KWALIFIKACJA INF3 - STYCZEŃ 2024 (test 2)

PYTANIE NR 37.
W wyniku walidacji strony został wygenerowany błąd. Oznacza on, że
Ilustracja przedstawia fragment kodu HTML z błędem walidacji dotyczącym atrybutu charset w elemencie meta.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Walidator zwraca błąd, gdy deklaracja kodowania w HTML jest niezgodna z oczekiwanym formatem lub zasadami dla dokumentu. W praktyce jako bezpieczny i zalecany standard stosuje się UTF-8, a komunikaty walidatora często wskazują na konieczność użycia właśnie tego kodowania w deklaracji charset.

Pełne wyjaśnienie:

Deklaracja kodowania znaków informuje przeglądarkę, jak interpretować bajty pliku HTML jako znaki (np. polskie litery). W HTML robi się to najczęściej przez element <meta charset="..."> umieszczony w sekcji <head> możliwie wysoko. W praktyce webowej standardem jest UTF-8, ponieważ obejmuje znaki z wielu alfabetów i minimalizuje ryzyko "krzaków".

Jeżeli walidator zgłasza błąd dotyczący deklaracji kodowania, oznacza to zwykle, że użyto nieprawidłowej/nieakceptowanej wartości w atrybucie charset albo że sposób deklaracji jest niezgodny z regułami walidacji dla danej wersji HTML. Stąd poprawna odpowiedź wskazuje, że w polu charset dopuszczalna jest wyłącznie wartość utf-8 (w kontekście tego konkretnego błędu z walidacji).

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • "w znaczniku meta nie występuje atrybut charset." — to opisuje brak atrybutu, a nie błąd mówiący o dozwolonych wartościach. Gdyby atrybutu nie było, komunikat walidatora dotyczyłby raczej braku deklaracji lub innej struktury znacznika.
  • "oznaczenie ISO-8859-2 nie istnieje." — ISO-8859-2 jest znanym oznaczeniem kodowania (Latin-2). Walidacja może go nie akceptować w danym miejscu lub profilu, ale samo oznaczenie nie jest "nieistniejące".
  • "oznaczenie kodowania znaków powinno być zapisane bez myślników." — w nazwach kodowań myślniki są normalne (np. UTF-8, ISO-8859-2). Problem nie polega na myślnikach jako takich, tylko na tym, jaka wartość jest dopuszczona w danym kontekście walidacji.

Wskazówka egzaminacyjna: w pytaniach o kodowanie rozróżniaj zalecenie projektowe (UTF-8 jako najlepsza praktyka) od konkretnego komunikatu walidatora, który może narzucać jedną wartość w danym profilu walidacji.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Walidacja HTML to sprawdzanie kodu strony pod kątem zgodności z regułami składni i wybraną specyfikacją HTML. Narzędzie (np. Nu Validator) wykrywa błędy w strukturze znaczników, atrybutach i czasem w deklaracjach, takich jak kodowanie znaków.
Informuje przeglądarkę o kodowaniu znaków dokumentu HTML. Dzięki temu bajty pliku są poprawnie mapowane na znaki (np. ą, ć, ł). UTF-8 jest powszechnie stosowane i minimalizuje problemy z wielojęzyczną treścią.
UTF-8 obsługuje znaki z większości alfabetów i jest standardem w nowoczesnym WWW. Ułatwia łączenie różnych języków, zmniejsza ryzyko błędów "krzaków" oraz jest dobrze wspierane przez przeglądarki, edytory i systemy CMS.
Tak, ISO-8859-2 (Latin-2) to historycznie używane kodowanie dla języków Europy Środkowej. Dziś jest spotykane rzadziej niż UTF-8. Walidator może je odradzać lub nie akceptować w konkretnym profilu, ale samo kodowanie istnieje.
W sekcji <head> i możliwie blisko początku dokumentu. Ma to znaczenie praktyczne: przeglądarka szybciej wie, jak dekodować treść. W typowych projektach deklarację kodowania umieszcza się przed tytułem i arkuszami CSS.
Najczęstsze problemy to brak deklaracji kodowania, nietypowa lub nieakceptowana wartość w charset, sprzeczność między nagłówkiem HTTP a deklaracją w HTML oraz sytuacje, gdy plik faktycznie jest w innym kodowaniu niż deklarowane.
Tak. Nazwy kodowań często zawierają myślniki (np. UTF-8, ISO-8859-2). Jeśli walidator zgłasza błąd, zwykle chodzi o niedozwoloną wartość w danym kontekście, a nie o sam fakt użycia myślników w nazwie.
Można to sprawdzić w ustawieniach edytora (np. VS Code), w nagłówkach HTTP odpowiedzi serwera (Content-Type z charset) oraz przez test: otworzyć plik i zweryfikować, czy znaki narodowe wyświetlają się poprawnie po ustawieniu deklaracji UTF-8.
Niektóre profile walidacji i praktyki jakościowe narzucają UTF-8 jako jedyną akceptowaną deklarację, aby ujednolicić obsługę znaków i uniknąć błędów migracji. Wtedy komunikat walidatora dotyczy dopuszczalnych wartości, a nie istnienia kodowań.
Ćwicz rozpoznawanie poprawnych deklaracji w <head>, czytaj komunikaty Nu Validator i ucz się typowych przyczyn błędów. Warto też rozumieć różnicę między plikiem zapisanym w UTF-8 a samą deklaracją charset w kodzie.
info

Około 47% zdających odpowiada poprawnie na to pytanie. trudne

Specjaliści zwracają uwagę: "Walidator zwraca błąd, gdy deklaracja kodowania w HTML jest niezgodna z oczekiwanym formatem lub zasadami dla dokumentu."

Źródła:

  • WHATWG HTML Living Standard: "Character encodings" oraz "The meta element" (meta charset) — https://html.spec.whatwg.org/ (dostęp: 2026-02-18)
  • MDN Web Docs: "&lt;meta&gt;: The Document-level Metadata element" (opis atrybutu charset) — https://developer.mozilla.org/en-US/docs/Web/HTML/Element/meta (dostęp: 2026-02-18)
  • W3C Nu Html Checker (HTML Validator): dokumentacja i zachowanie walidatora — https://validator.w3.org/nu/ (dostęp: 2026-02-18)

Materiały:

  • Dokumentacja WHATWG HTML Living Standard (sekcje o kodowaniu i &lt;meta charset&gt;)
  • MDN Web Docs: opis elementu &lt;meta&gt; i atrybutu charset
  • Materiały o kodowaniach znaków i Unicode (wprowadzenie do UTF-8)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego