Wskaż kod HTML5, który zostanie zakwalifikowany przez walidator jako błędny.
Odpowiedzi
Informacja zwrotna
Odpowiedź <p class="stl"><style>.a{color:#F00}</style>tekst</p> jest błędna, ponieważ zawiera element <style>, który jest nieprawidłowo umieszczony wewnątrz znacznika <p>. W HTML5, elementy <style> powinny występować w sekcji <head> dokumentu lub w kontekście, gdzie są dozwolone, a nie wewnątrz elementów blokowych takich jak <p>. Walidatory HTML5, zgodne z standardami W3C, wskazują na to jako błąd, ponieważ takie umiejscowienie stylu może prowadzić do nieprzewidzianych efektów wizualnych oraz problemów z rozumieniem struktury dokumentu. Zamiast tego, właściwe byłoby umieszczenie stylu w sekcji <head> lub zastosowanie atrybutu style bezpośrednio w elemencie, co jest zgodne z dobrymi praktykami projektowania stron internetowych. Umożliwia to zachowanie semantyki HTML oraz lepszą organizację kodu.
Odpowiedzi <p class="stl" id="a">tekst</p>, <p class="stl" style="color: #F00">tekst</p> oraz <p class="stl">tekst</p> są poprawne i zgodne z standardami HTML5. Element <p> jest ogólnym znacznikiem używanym do definiowania paragrafów, a jego właściwe użycie obejmuje dodanie klas i identyfikatorów, co może być przydatne do stylizacji i skryptów. Użycie klasy 'stl' w pierwszym przykładzie pozwala na łatwe stylizowanie tego elementu w arkuszach stylów, co jest zgodne z zasadami modularności i ponownego użycia kodu. W przypadku drugiego przykładu, zastosowanie atrybutu style pozwala na bezpośrednie zastosowanie stylu, co jest właściwym podejściem w kontekście prostych aplikacji, chociaż w praktyce lepiej jest unikać inline styles ze względu na trudności w utrzymaniu kodu. Ostatni przykład, czyli <p class="stl">tekst</p>, nie zawiera żadnych dodatkowych atrybutów, ale także jest poprawny i może być używany w wielu kontekstach, gdzie stylizacja nie jest wymagana. Błędne jest myślenie, że elementy HTML5 są jedynie kontenerami treści - ich semantyka i zastosowanie klasy, identyfikatorów oraz stylów mają kluczowe znaczenie dla efektywności i organizacji kodu, co powinno być brane pod uwagę przy projektowaniu stron internetowych.