Semantic HTML dla SEO

Jak semantyczne elementy HTML (article, section, nav, header, main, aside) pomagają wyszukiwarkom rozpoznać główną treść strony — dlaczego nie są czynnikiem rankingowym i jak poprawnie używać każdego elementu.

Opublikowano po raz pierwszy: 2 lip 2026 · Ostatnia aktualizacja: 11 sie 2026 · Advanced
Języki

Semantic HTML używa elementów takich jak <main>, <article>, <section>, <nav>, <header> i <aside>, aby opisać, czym jest treść, a nie tylko jak wygląda. Nie jest czynnikiem rankingowym — John Mueller nazywa je 'not a magical multiplier' _(tłumaczenie)_ „nie magicznym mnożnikiem” i mówi, że <article> ma 'no particular effect' _(tłumaczenie)_ „żadnego szczególnego wpływu” na wyszukiwarkę. Pomaga za to Google niezawodniej oddzielać główną treść od boilerplate’u, technologiom asystującym oraz crawlerom AI, które nie renderują JavaScriptu. Fabrice Canel z Binga ujmuje korzyść mocniej jako 'an advantage in SEO.' _(tłumaczenie)_ „przewagę w SEO”. Ta sama zasada wykracza poza landmarki: używaj <a href> do nawigacji i <button> do działań, prawdziwych <table> do danych tabelarycznych, tekstu alt dopasowanego do celu obrazu oraz <details>/<summary> do natywnych elementów rozwijanych. Nie polegaj na starym, nigdy niezaimplementowanym algorytmie konspektu dokumentu, by przez zagnieżdżanie <section> sugerować poziomy nagłówków. Poprawne użycie jest ważniejsze od samej obecności: jeden <main> na stronę, <article> dla samodzielnej treści, <section> dla tematycznej grupy z nagłówkiem — nie jako zamiennik <div>. Nie myl tego z Semantic SEO, czyli strategią tematów i encji.

TL;DR — Semantic HTML używa elementów zgodnie z ich zamierzonym znaczeniem strukturalnym (<main>, <article>, <section>, <nav>, <header>, <aside>), aby markup komunikował, czym jest treść, a nie jak wygląda. Nie jest czynnikiem rankingowym — Mueller mówi: “not a magical multiplier,” (tłumaczenie) „nie jest magicznym mnożnikiem”, a <article> ma “no particular effect.” (tłumaczenie) „nie ma szczególnego wpływu.” Jego rolą jest ograniczanie niejednoznaczności: adnotacja centerpiece Google oddziela główną treść od boilerplate’u za pomocą NLP niezależnie od tego, czy markup jest semantyczny, ale czysta semantyka czyni to zadanie bardziej niezawodnym. Fabrice Canel z Binga ujmuje sprawę mocniej — “an advantage in SEO” (tłumaczenie) „przewaga w SEO” — a tę różnicę warto zachować. Przewodnik Google mówi, że większość internetu nie jest poprawnym HTML-em, więc Google rzadko opiera się na semantyce specyfikacji. Właściwe użycie jest ważniejsze od samej obecności: jeden <main>, <article> dla samodzielnej treści, <section> dla tematycznej grupy z nagłówkiem — nie jako zamiennik <div>. Ta sama zasada obejmuje <a href> kontra <button> (nawigacja kontra działanie), prawdziwe <table> dla danych tabelarycznych, celowy tekst alternatywny obrazów oraz <details>/<summary> dla elementów rozwijanych. Nie polegaj na zagnieżdżaniu <section>, by sugerować poziom nagłówka; stary algorytm konspektu dokumentu nigdy nie został zaimplementowany, a specyfikacja nie definiuje już zarysów w ten sposób. Nie myl semantic HTML z Semantic SEO.

Evidence for this claim Semantic HTML uses elements according to their defined purpose and structural meaning. Scope: HTML element semantics. Confidence: high · Verified: WHATWG HTML: Semantics Evidence for this claim Native semantic HTML exposes built-in roles and supports accessible structure when elements are used correctly. Scope: W3C guidance on semantic HTML and accessibility. Confidence: high · Verified: W3C WAI: HTML and accessibility

Czym semantic HTML rzeczywiście jest

Semantic HTML polega na wybieraniu elementów HTML zgodnie ze znaczeniem strukturalnym, które mają przekazywać, zamiast używania do wszystkiego <div> i <span>. Elementy <article>, <section>, <nav>, <header>, <main>, <aside> i <footer> deklarują określoną rolę. Markup opisuje, czym jest fragment strony, a CSS decyduje o jego wyglądzie. Przewodnik stylistyczny Google ujmuje tę zasadę najprościej: “Use HTML elements for the purposes that they were designed for.” (tłumaczenie) „Używaj elementów HTML zgodnie z ich przeznaczeniem.” Przeczytaj źródło.

Jedna rzecz często wprawia ludzi w zakłopotanie: nazwa klasy nie tworzy semantyki. Nazwanie <div> class="article" lub class="main-nav" nie nadaje mu modelu treści elementu <article> ani niejawnej roli nawigacyjnej elementu <nav> — dla przeglądarki, czytnika ekranu i crawlera nadal jest to ogólny <div>. Semantyka tkwi w wybranym elemencie, a nie w sposobie jego stylowania lub etykietowania.

Ten artykuł dotyczy konkretnie semantycznych elementów. Szerszy obraz — „jak Google parsuje HTML, hierarchię nagłówków i poprawność kodu” — należy do centrum HTML SEO, pod którym znajduje się ta strona. Zamiast omawiać te kwestie ponownie, odsyłam do centrum.

Czy semantic HTML rzeczywiście pomaga w SEO?

Krótka odpowiedź: pomaga w zrozumieniu, nie jest czynnikiem rankingowym, a obie wyszukiwarki ujmują to trochę inaczej. Oto uczciwa wersja.

Co mówi Google

Stanowisko Google, powtarzane przez Johna Muellera, jest jasne: semantic HTML warto stosować, ale nie jest ono dźwignią rankingową. Jak podał Search Engine Journal, Mueller powiedział “Semantic HTML does help to understand a page. However, it’s not a magical multiplier for making a website rank higher,” (tłumaczenie) „Semantic HTML pomaga zrozumieć stronę, ale nie jest magicznym mnożnikiem podnoszącym pozycję witryny”przeczytaj omówienie. Osobno powiedział: “Please use semantic HTML. It’s not a ranking factor, but it can help our systems to understand your content better.” (tłumaczenie) „Proszę, używaj semantic HTML. Nie wpływa ono na ranking, ale może ułatwić naszym systemom zrozumienie treści.” To samo źródło.

W odniesieniu do elementu <article> — tego, o który pyta się najczęściej — Mueller odpowiedział w sesji Office Hours wprost: element <article> “does not have any particular effect in Google Search,” (tłumaczenie) „nie ma żadnego szczególnego wpływu na wyszukiwarkę Google”przeczytaj omówienie. Dodał też właściwy powód jego stosowania: “Sometimes there are accessibility or semantic reasons to use a specific kind of markup, so don’t only focus on SEO.” (tłumaczenie) „Czasem określony rodzaj markupu warto zastosować ze względów dostępności lub semantyki, więc nie skupiaj się wyłącznie na SEO.” To samo źródło.

Google wyraźnie mówi również, że nie zależy od idealnej semantyki. SEO Starter Guide zauważa: “Having your headings in semantic order is fantastic for screen readers, but from Google Search perspective, it doesn’t matter if you’re using them out of order. The web in general is not valid HTML, so Google Search can rarely depend on semantic meanings hidden in the HTML specification.” (tłumaczenie) „Uporządkowanie nagłówków semantycznie jest znakomite dla czytników ekranu, lecz ich kolejność nie ma znaczenia dla wyszukiwarki Google. Internet zwykle nie jest poprawnym HTML-em, więc Google Search rzadko może opierać się na znaczeniach semantycznych ukrytych w specyfikacji HTML.” Przejdź do cytatu. To ważne doprecyzowanie, nie sprzeczność: semantic HTML pomaga, lecz nie wymaga perfekcji i nie jest punktowanym sygnałem.

Jak pomaga Google znaleźć główną treść

Oto mechanizm, dzięki któremu semantic HTML jest użyteczne mimo że nie stanowi czynnika rankingowego. Zanim Google określi temat strony, musi oddzielić jej główną treść od boilerplate’u — nawigacji, nagłówka, stopki, pasków bocznych i reklam. Martin Splitt opisał ten mechanizm: “We have a thing called the Centerpiece Annotation, for instance, and there’s a few other annotations that we have where we look at the semantic content.” (tłumaczenie) „Mamy na przykład adnotację Centerpiece oraz kilka innych adnotacji, w których analizujemy treść semantyczną.”. Google rozpoznaje temat przez przetwarzanie języka naturalnego, a nie nazwy tagów: “This looks like from all the natural language processing that we did on this entire text content here that we got, it looks like this is primarily about topic A, dog food.” (tłumaczenie) „Z całego przetwarzania języka naturalnego wykonanego na tej treści wynika, że dotyczy ona przede wszystkim tematu A — karmy dla psów.”. Pozostałe fragmenty otrzymują inną wagę: “We figure out what looks like boilerplate and then, that gets weighted differently as well.” (tłumaczenie) „Ustalamy, co wygląda na boilerplate, a następnie nadajemy temu inną wagę.”.

Najważniejsze: ta ekstrakcja działa niezależnie od tego, czy markup jest semantyczny. Google potrafi rozplątać stronę zbudowaną wyłącznie z <div>. Zapytany wprost, czy semantic HTML5 pomaga, Splitt odpowiedział “It does help us, but it’s not the only thing that we look for. Yes.” (tłumaczenie) „Tak, pomaga nam, ale nie jest jedyną rzeczą, którą bierzemy pod uwagę.”. Semantic HTML nie podnosi więc wyniku; ogranicza zgadywanie na etapie, który Google i tak wykonuje. Jest sygnałem pewności i efektywności, a nie sygnałem rankingowym. Poprawny markup semantyczny nie gwarantuje też określonej prezentacji w wyszukiwarce — reguły kwalifikacji do wyników rozszerzonych stanowią osobną warstwę.

Co mówi Bing (i dlaczego się różni)

Bing ujmuje tę kwestię mocniej niż Google i warto zachować tę różnicę zamiast ją zacierać. Fabrice Canel z Microsoftu powiedział, że strony z poprawnie wdrożonym semantic HTML5 mają “an advantage in SEO” (tłumaczenie) „przewagę w SEO” w porównaniu z tymi, które go nie mają. To mocniejsze stwierdzenie niż sformułowanie Google o pomocy w zrozumieniu strony. Obie wyszukiwarki zgadzają się, że semantyka pomaga mechanicznie, lecz używają innych słów. Żadna nie opisuje jej jednak jako punktowanego czynnika rankingowego na wzór linków lub trafności.

Najważniejsze elementy semantyczne i ich poprawne użycie

Sama obecność nie jest celem — liczy się poprawne użycie. Najczęstszy błąd polega na rozrzucaniu tagów semantycznych jak ozdób albo zamianie <div> na <section> bez refleksji nad znaczeniem każdego elementu.

<header> zawiera treść wprowadzającą, a <footer> treść zamykającą — i oba elementy są kontekstowe. Na poziomie dokumentu <header> jest banerem witryny, a <footer> jej stopką. Mogą jednak również zagnieżdżać się wewnątrz <article> lub <section>, aby oznaczyć własny wstęp i zakończenie tego bloku (tytuł i autora artykułu w <header>, jego tagi w <footer>). Możesz mieć ich wiele; upewnij się tylko, że każdy obejmuje treść wprowadzającą lub zamykającą swojego kontekstu, a nie przypadkowe pudełka.

<nav> służy głównym blokom linków nawigacyjnych — głównemu menu, ścieżce okruszków lub spisowi treści na stronie. Nie jest przeznaczony dla każdej grupy linków (lista powiązanych wpisów w treści nie musi być <nav>). Owijanie każdego skupiska linków w <nav> rozmywa sygnał; zachowaj ten element dla prawdziwej nawigacji.

<main>

<main> obejmuje główną, unikalną treść strony — tę część, która nie powtarza się w całej witrynie. Zasada, na której wiele osób się potyka: na stronie powinien być dokładnie jeden <main>, a nie może on znajdować się wewnątrz <article>, <aside>, <header>, <footer> ani <nav>. To najwyraźniejszy sygnał, jaki możesz przekazać: „to jest treść, która ma tutaj znaczenie”.

<article> a <section> (różnica, którą prawie wszyscy mylą)

Oto rozróżnienie, które trzeba uchwycić:

  • <article> służy samodzielnej, niezależnie dystrybuowalnej treści — takiej, która nadal miałaby sens po wyjęciu ze strony i umieszczeniu w kanale. Wpis na blogu, wiadomość, karta produktu, wpis na forum, pojedynczy komentarz użytkownika. Jeśli może być syndykowany samodzielnie, jest <article>.
  • <section> to tematyczna grupa treści, która powinna mieć własny nagłówek. Blok „Recenzje”, blok „Specyfikacje”, rozdział. Test jest prosty: jeśli treść nie ma sensu z nagłówkiem, prawdopodobnie nie jest <section> — a jeśli używasz go tylko po to, by podpiąć CSS, powinien to być <div>.

<section> nie jest ogólnym wrapperem. Gdy potrzebujesz zaczepu do stylowania bez znaczenia semantycznego, użyj <div> — dokładnie do tego służy. Sięganie po <section>, bo „wydaje się bardziej nowoczesny”, to najczęstsze niewłaściwe użycie tego elementu.

<aside>

<aside> oznacza treść poboczną względem otaczającej treści — pasek boczny, cytat wyróżniony, pole powiązanych linków lub blok reklam. Sygnalizuje: „to jest powiązane, ale nie stanowi głównego wątku”, czyli dokładnie rozróżnienie boilerplate’u i głównej treści, które Google i tak próbuje ustalić. Nie używaj go tylko dlatego, że coś znajduje się wizualnie z boku; stosuj go, gdy treść jest rzeczywiście drugorzędna.

Poprawne role landmarków (i mit o zarysie dokumentu)

Każdy element landmarku mapuje się na konkretną niejawną rolę ARIA, którą technologie asystujące odczytują bezpośrednio — to ta sama obliczona struktura, po której porusza się użytkownik niewidzący, więc warto znać rzeczywiste mapowanie zamiast zgadywać:

ElementNiejawna rolaUwaga
<header> (poziom dokumentu)bannerTylko na najwyższym poziomie — wewnątrz <article>/<aside>/<main>/<nav>/<section> nie ma roli landmarku.
<footer> (poziom dokumentu)contentinfoTa sama uwaga — po zagnieżdżeniu nie jest landmarkiem.
<nav>navigation
<main>main
<aside>complementary
<article>article (nie landmark)Rola struktury dokumentu, a nie jeden z nawigowalnych landmarków.
<section>region — ale tylko z dostępną nazwą (np. przez nagłówek)Nienazwane <section> nie ma żadnej niejawnej roli, co jest kolejnym powodem, by nie używać go jako zamiennika <div>.

Warto odrzucić jeden popularny przesąd: zagnieżdżenie <section> nie nadaje jego nagłówkom niejawnie niższej rangi. Wczesny HTML5 definiował document outline algorithm, który obliczałby efektywny poziom nagłówka na podstawie głębokości zagnieżdżenia w elementach sekcjonujących — zagnieżdżony <h1> mógłby teoretycznie „zachowywać się jak” <h2>. Żadna przeglądarka ani czytnik ekranu nigdy nie zaimplementowały tego algorytmu, a specyfikacja WHATWG porzuciła go na rzecz znacznie prostszego ujęcia: zarys to po prostu wszystkie nagłówki dokumentu w kolejności drzewa. Zapisuj poziomy <h1><h6> jawnie i w kolejności, w której chcesz, by były odczytywane — głębokość zagnieżdżenia nie wykona tej pracy za ciebie.

Linki kontra przyciski — test działanie kontra nawigacja

To nie jest element landmarku, ale najczęstszy błąd semantyczny w sieci: używanie stylizowanego <div> lub <span> (albo <button>) tam, gdzie powinien być <a href>, lub odwrotnie. Specyfikacja WHATWG jest konkretna — <a> z atrybutem href to natywny mechanizm hiperłącza, a element <button> to opisany etykietą interaktywny element sterujący uruchamiający działanie. Test jest prosty: czy element zabiera użytkownika do czegoś (nowego adresu URL, nowej strony, fragmentu)? Użyj <a href>. Czy wykonuje coś na bieżącej stronie (wysyła formularz, otwiera modal, przełącza ustawienie)? Użyj <button>. Stylowanie jednego tak, by wyglądał jak drugi, nie zmienia jego natywnej natury — <div> z obsługą kliknięcia nie ma ani natywnej obsługi klawiatury, ani właściwej roli dostępności, chyba że samodzielnie odtworzysz to wszystko za pomocą role, tabindex i obsługi klawiszy. Po prostu użyj właściwego elementu.

Tabele służą danym tabelarycznym, nie układowi

Jeśli treść rzeczywiście ma wiersze i kolumny — tabelę porównawczą, siatkę cenową, zbiór danych — użyj prawdziwego <table>, a nie siatki stylizowanych <div>. Specyfikacja tabel WHATWG definiuje rzeczywisty model danych: <caption> nadaje tabeli nazwę, a komórki nagłówkowe <th> (z scope) ustanawiają relacje wiersz/kolumna, dzięki którym technologie asystujące mogą ogłosić „cena, 49 USD”, zamiast odczytywać po prostu ścianę liczb. Siatka zbudowana z <div>, która tylko wygląda jak tabela, nie przenosi tych danych o relacjach — dobrze wygląda, ale nie jest poprawnie odczytywana. Nie używaj też <table> do układu strony; to starsze nadużycie, które ta praktyka zastąpiła.

Tekst alternatywny zależy od przeznaczenia obrazu

<img> potrzebuje atrybutu alt, ale wymagania specyfikacji WHATWG zależą od przeznaczenia, a nie są uniwersalne: zdjęcie produktu wymaga opisu tego, co przedstawia; obraz czysto dekoracyjny powinien otrzymać alt="" (pusty, a nie pominięty), aby technologia asystująca go pominęła zamiast ogłaszać nazwę pliku; obraz będący również linkiem potrzebuje tekstu alternatywnego opisującego miejsce docelowe lub działanie linku, a nie tylko obraz. Nie stosuj domyślnie upakowanego słowami kluczowymi tekstu alt na każdym obrazie „dla SEO” — to niewłaściwy test. Właściwe pytanie brzmi: co użytkownik czytnika ekranu musi wiedzieć, a czego inaczej by nie zauważył?

Natywne widgety rozwijane: <details> i <summary>

W przypadku treści typu „kliknij, aby rozwinąć” — FAQ, kart specyfikacji czy tekstu ze spoilerem — para <details>/<summary> jest natywnym widgetem rozwijanym: <summary> to zawsze widoczna etykieta, a treść wewnątrz <details> pokazuje się lub ukrywa zależnie od stanu open elementu, bez JavaScriptu. Para ma wbudowaną obsługę klawiatury i właściwą semantykę dostępności — użycie akordeonu z własnego <div> i JavaScriptu oznacza ponowne implementowanie zachowania, które przeglądarka już zapewnia. Przed wdrożeniem przetestuj ją jednak w rzeczywistych docelowych przeglądarkach i czytnikach ekranu — sposób renderowania oraz ujawniania w drzewie dostępności dla <details>/<summary> historycznie różnił się zależnie od kombinacji przeglądarki i technologii asystującej, więc nie zakładaj zgodności, której nie sprawdziłeś.

Popularne mity o semantic HTML i SEO

  1. „Owinięcie treści w <article> poprawia pozycje.” Nie — Mueller mówi, że element <article> “does not have any particular effect in Google Search.” (tłumaczenie) „nie ma żadnego szczególnego wpływu na wyszukiwarkę Google”. Przeczytaj źródło.
  2. „Semantic HTML jest czynnikiem rankingowym.” Nie — nie jest “not a magical multiplier” (tłumaczenie) „magicznym mnożnikiem” (źródło), a Mueller dodaje: “It’s not a ranking factor, but it can help our systems to understand your content better.” (tłumaczenie) „Nie jest sygnałem rankingowym, lecz może ułatwić naszym systemom lepsze rozumienie Twojej zawartości.” To samo źródło.
  3. „Google wymaga poprawnego, ściśle semantycznego HTML-u.” Nie — według Starter Guide większość sieci nie jest poprawnym HTML-em, a Google “can rarely depend on semantic meanings hidden in the HTML specification.” (tłumaczenie) „rzadko może polegać na znaczeniach semantycznych ukrytych w specyfikacji HTML”. Przejdź do cytatu.
  4. „Kolejność nagłówków musi być idealna dla SEO.” Czytniki ekranu jej potrzebują, ale ranking Google nie. Szersze omówienie hierarchii nagłówków należy do centrum HTML SEO; tutaj wystarcza ten skrót.
  5. „Semantic HTML i Semantic SEO to to samo.” Nie — jedno oznacza strukturę markupu, drugie strategię treści opartą na tematach i encjach.
  6. „Dane strukturalne czynią semantic HTML zbędnym.” Nie — te rozwiązania się uzupełniają. Semantic HTML daje danym strukturalnym wiarygodną podstawę, lecz ich nie zastępuje, a JSON-LD nie naprawia zupy z divów. Wprowadzenie Google do danych strukturalnych wyjaśnia też, że obsługiwany markup nie gwarantuje wyniku rozszerzonego.
  7. „Zagnieżdżenie <section> nadaje nagłówkom niejawną niższą rangę.” Nie — to pozostałość po starym document outline algorithm HTML5. Żadna przeglądarka ani czytnik ekranu go nie zaimplementowały, a specyfikacja HTML WHATWG nie definiuje już zarysu w ten sposób. Stosuj jawne, poprawnie uporządkowane <h1><h6> niezależnie od głębokości zagnieżdżenia <section>/<article>.

Semantic HTML a Semantic SEO — nie myl tych pojęć

Ponieważ mają wspólne słowo, są stale mylone, co zaśmieca wyniki wyszukiwania dla obu tematów:

  • Semantic HTML = markup — elementy używane do strukturyzowania strony.
  • Semantic SEO = strategia treści — budowanie autorytetu tematycznego wokół encji i powiązanych pojęć (coś, co należy do filarów AI Search i contentu, nie tutaj).

Jeśli trafiłeś tutaj z zapytania „semantic SEO” i oczekiwałeś modelowania tematów, chodzi o inny artykuł. Ten dotyczy wyłącznie elementów.

Semantic HTML i crawlery AI/LLM

W tym miejscu semantic HTML po cichu staje się bardziej istotne, ale zaznaczam, że to opinia branżowa, a nie twierdzenie wyszukiwarki. Wiele crawlerów LLM i silników odpowiedzi AI nie renderuje JavaScriptu — parsują dostarczony im HTML. Czysty markup semantyczny jest dla nich łatwiejszy do obsługi niż głęboko zagnieżdżona zupa z <div>. Barry Adams ujmuje to tak: “It’s much simpler for ChatGPT to parse a few dozen semantic HTML tags rather than several hundred (or even thousand) nested <div> tags,” (tłumaczenie) „ChatGPT znacznie łatwiej analizuje kilkadziesiąt semantycznych tagów HTML niż kilkaset, a nawet kilka tysięcy, zagnieżdżonych tagów <div>, a szerzej: “Semantic HTML markup on your webpages can help machine systems better understand your content and its value.” (tłumaczenie) „Markup semantic HTML na stronach może pomóc systemom maszynowym lepiej zrozumieć treść i jej wartość.”. Jono Alderson przedstawia podobny argument: witryna to “an interface. An API. A dataset,” (tłumaczenie) „interfejs, API i zbiór danych”, a nie tylko doświadczenie wizualne. Jego zdanie podsumowuje sens poprawnego użycia: “If everything is a <div> or a <span>, then nothing is meaningful.” (tłumaczenie) „Jeśli wszystko jest <div> albo <span>, nic nie ma znaczenia.”. Traktuj to jako kierunkowy powód utrzymywania czystego markupu, nie obietnicę Google ani Binga.

Jak audytować i modernizować istniejące strony

Większość prawdziwych witryn już jest „zupą divów” i nie przebudujesz ich przez noc. Pragmatyczna kolejność modernizacji:

  • Najpierw ustanów landmarki. Upewnij się, że istnieje dokładnie jeden <main>, dokumentowy <header>, <footer> oraz <nav> dla głównego menu. Te elementy wykonują najwięcej pracy zarówno przy ekstrakcji głównej treści, jak i dostępności.
  • Zamień samodzielne bloki na <article>. Wpisy blogowe, karty produktów, komentarze — wszystko, co mogłoby istnieć niezależnie w kanale.
  • Zamień prawdziwe grupy tematyczne na <section> — ale tylko tam, gdzie istnieje prawdziwy nagłówek. Jeśli go nie ma, pozostaw <div>.
  • Przenieś paski boczne i pola powiązanej treści do <aside>.
  • Napraw fałszywe linki i przyciski. Stylizowany <div> z obsługą kliknięcia powinien stać się <a href> (jeśli nawiguje) lub <button> (jeśli wykonuje działanie na stronie) — zwykle jest to pojedyncza poprawka o największej wartości dla użytkowników klawiatury i czytników ekranu.
  • Zamień przypominające tabele siatki <div> na prawdziwe <table>, gdy treść jest rzeczywiście tabelaryczna, z <caption> i <th> dla komórek nagłówkowych.
  • Nie konwertuj przesadnie. <div> użyty wyłącznie jako zaczep stylowania/układu jest poprawny. Nie wszystko potrzebuje elementu semantycznego; wymuszanie go jest własnym błędem.
  • Weryfikuj, nie zakładaj. Sprawdź drzewo dostępności w DevTools przeglądarki — pokazuje role landmarków, które tworzy Twój markup, czyli tę samą strukturę, którą odczytują maszyny.

Jak to pasuje do centrum HTML SEO

Ten artykuł jest szczegółowym opracowaniem w ramach nadrzędnego centrum HTML SEO, które obejmuje szersze pytanie o to, jak wyszukiwarki parsują i wykorzystują HTML — hierarchię nagłówków, poprawność HTML oraz to, jak wyrozumiałe parsery radzą sobie z niechlujnym markupem. Celowo ograniczyłem tę stronę do samych elementów semantycznych, a te tematy pozostawiłem centrum i artykułom siostrzanym. Semantic HTML łączy się też bezpośrednio z danymi strukturalnymi: markup daje Twojemu schematowi godną zaufania podstawę, a oba rozwiązania wykonują uzupełniające się zadania.

FAQ

Czy semantic HTML pomaga w SEO, czy służy tylko dostępności? Jednemu i drugiemu — pomaga wyszukiwarkom identyfikować główną treść i jest niezbędny dla dostępności. Nie jest jednak czynnikiem rankingowym.

Czy użycie tagu <article> poprawia pozycje? Nie. Mueller mówi, że element “does not have any particular effect in Google Search.” (tłumaczenie) „nie ma żadnego szczególnego wpływu na wyszukiwarkę Google”. Przeczytaj omówienie.

Jaka jest różnica między <article> a <section>? <article> to samodzielna treść, która mogłaby istnieć niezależnie w kanale; <section> to tematyczna grupa z własnym nagłówkiem. Żaden z nich nie jest zamiennikiem <div>.

Czy na stronie mogę mieć więcej niż jeden element <main>? Nie — jeden <main> na stronę.

Czy Google wymaga poprawnego HTML-u, aby strona zajmowała wysoką pozycję? Nie — większość sieci nie jest poprawnym HTML-em, a Google “can rarely depend on semantic meanings hidden in the HTML specification.” (tłumaczenie) „rzadko może polegać na znaczeniach semantycznych ukrytych w specyfikacji HTML”. Przejdź do cytatu.

Czy semantic HTML to to samo co semantic SEO? Nie — jedno jest mark-upem, a drugie strategią treści wokół tematów i encji.

Czy dla klikalnego elementu użyć <a>, czy <button>? To zależy od działania. Jeśli nawiguje do adresu URL lub fragmentu, użyj <a href>. Jeśli wykonuje działanie na bieżącej stronie (wysyła, przełącza, otwiera modal), użyj <button>. Nie udawaj jednego drugim za pomocą stylizowanego <div> i obsługi kliknięcia.

Czy zagnieżdżenie <section> zmienia poziom nagłówka, którego powinienem użyć? Nie. Stary document outline algorithm HTML5 — który obliczałby niejawną rangę nagłówka na podstawie zagnieżdżenia sekcji — nie został zaimplementowany przez żadną przeglądarkę ani czytnik ekranu, a obecna specyfikacja nie definiuje zarysów w ten sposób. Używaj jawnych, poprawnie uporządkowanych <h1><h6> niezależnie od głębokości zagnieżdżenia.

Czy poprawny semantic HTML lub dane strukturalne gwarantują wynik rozszerzony? Nie. Własna dokumentacja Google dotycząca danych strukturalnych mówi, że obsługiwany markup nie gwarantuje konkretnej prezentacji w wyszukiwarce — kwalifikacja do funkcji jest niezależna od tego, czy markup jest technicznie poprawny.

Evidence for this claim Semantic HTML and search structured data are distinct layers: native elements describe document content and controls, while supported structured-data markup supplies feature-specific machine-readable properties; valid markup does not guarantee a rich result or ranking gain. Scope: supported structured-data features Confidence: high · Verified: Introduction to structured data markup in Google Search

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.