W XHTML obowiązują reguły składni XML. Oznacza to m.in., że każdy element musi być poprawnie domknięty. Dla tzw. elementów pustych (czyli takich, które nie mają treści i nie mają znacznika zamykającego) stosuje się zapis samozamykający.
W pokazanym fragmencie występuje znacznik łamania linii zapisany jako <br>. W HTML taki zapis bywa akceptowany, ale w XHTML jest to błąd walidacji, ponieważ element br jest elementem pustym i powinien być zapisany jako <br /> (w praktyce często spotyka się też <br/>).
Dlaczego pozostałe odpowiedzi są niepoprawne?
- Stwierdzenie o braku nagłówka 6. stopnia jest fałszywe: w HTML/XHTML istnieją nagłówki od h1 do h6, więc użycie <h6> samo w sobie nie łamie walidacji.
- Wymóg pisania znaczników wielkimi literami nie wynika z XHTML. W XML ważna jest konsekwencja i zgodność z nazwą, a w XHTML nazwy elementów standardowo są małymi literami. Wielkość liter nie jest tu istotą błędu walidacji wskazanego w kodzie.
- Twierdzenie, że <b> nie może być zagnieżdżony w <p>, jest niezgodne z typową składnią HTML/XHTML: element <b> jest elementem inline i może pojawić się wewnątrz akapitu. To nie ten aspekt powoduje błąd walidacji w podanym przykładzie.
Wskazówka egzaminacyjna: jeżeli w treści jest mowa o XHTML i walidacji, w pierwszej kolejności sprawdź domykanie znaczników oraz elementy puste (np. br, img, hr, meta, link, input), bo to częste źródło błędów.