--- title: Semantyka slug: Glossary/Semantics translation_of: Glossary/Semantics original_slug: Glossary/Semantyka ---
W programowaniu Semantyka oznacza znaczenie kawałka kodu — na przykład: "Jaki efekt da ta linia kodu w JavaScripcie?" lub "Jaki cel lub rolę odgrywa ten element HTML?" (ale nie "Jak to wygląda?").
Załóżmy, że chcemy stworzyć funkcję, która przyjmuje string jako parametr i zwraca element {{htmlelement("li")}} z tym napisem jako jego textContent
. Zwróć uwagę na to, czy potrzebowałbyć przeczytać kod, by dowiedzieć się co dokładnie robi ta funkcja, gdyby była nazwana build('Peach')
lub createLiWithContent('Peach')
.
Załóżmy, że chcesz ostylować listę li
elementów reprezentującą różne owoce. Zwróć uwagę na to, czy wiedziałbyć do której części DOM jest odnosi się selektor div > ul > li
lub .fruits__item
.
W języku HTML, element semantyczny {{htmlelement("h1")}}, nadaje rolę (lub znaczenie) napisowi pomiędzy znacznikami: "najważniejszy nagłówek na twojej stronie"
<h1>To jest najważniejszy nagłówek</h1>
Domyślnie, większość przeglądarek ostylowuje element {{htmlelement("h1")}} dużą czcionką by wyglądał jak nagłówek (jednak możesz go ostylować jak chcesz).
Z drugiej strony, możesz dowolny element możesz ostylować tak by wyglądał jak nagłówek. Tak jak poniżej:
<span style="font-size: 32px; margin: 21px 0;">Czy to jest najważniejszy nagłówek?</span>
Powyższy element będzie wyglał jak najważniejszy nagłówek, nie ma wartości semantycznej. Dlatego najlepiej używać elementów HTML zgodnie z ich przeznaczeniem.
Kod HTML powinien reprezentować dane i nie być oparty na domyślnym stylowaniu. Prezentacja (czyli jak powinny one wyglądać) to zadanie wyłącznie języka CSS.
Poniżej przedstawiono niektóre zalety poprawnego stosowania semantycznych znaczników:
Gdy zastanawiasz się, który znacznik należy użyć, zapytaj się, "Który element najlepiej określa/reprezentuje zawartość, którą chcę podać?". Na przykład: Czy to lista ponumerowana czy nie? Czy to artykuł podzielony na sekcję i częścią boczną? Czy to lista definicji? Czy to powinno mieć własny nagłówek? Czy ten obrazek potrzebuje podpisu? itp.
Oto niektóre z około 100 elementów semantycznych: