Semantic HTML pour le SEO
How semantic HTML elements (article, section, nav, header, principal, aside) aider moteur de recherches identifier une page's principal content — pourquoi it's pas a ranking factor, and Comment utiliser chaque element correctement.
Semantic HTML utilise elements comme <main>, <article>, <section>, <nav>, <header>, et <aside> à décrire ce que contenu est, pas simplement comment il semble. Il n’est pas a facteur de classement — John Mueller calls il 'pas a magical multiplier' et dit <article> a 'aucun particulier effect' dans Recherche. Ce que il fait est aider Google séparé principal contenu depuis boilerplate plus reliably (Google's centerpiece annotation fait ce via NLP regardless de votre markup, mais clean semantics reduce le guesswork), aider assistive tech, et aider AI robots d’exploration que ne pas rendre JavaScript. Bing's Fabrice Canel frames il plus strongly as 'an advantage dans SEO.' Le même idea extends past landmarks: utiliser <a href> pour navigation et <button> pour actions, réel <table>s pour tabular données, purpose-based texte alternatif on images, et <details>/<summary> pour native disclosure widgets — et ne pas rely on le old, jamais-implemented 'document outline algorithm' à imply titre levels via <section> nesting. Correct usage beats presence: un <main> par page, <article> pour self-contained contenu, <section> pour a themed groupe avec a titre — pas a <div> replacement. ne pas confuse il avec Semantic SEO (topical/entity stratégie).
Preuve à l’appui de cette affirmation Semantic HTML uses elements according to their defined purpose and structural meaning. Portée : HTML element semantics. Niveau de confiance : élevé · Vérifié : WHATWG HTML: Semantics Preuve à l’appui de cette affirmation Native semantic HTML exposes built-in roles and supports accessible structure when elements are used correctly. Portée : W3C guidance on semantic HTML and accessibility. Niveau de confiance : élevé · Vérifié : W3C WAI: HTML and accessibilityTL;DR — Semantic HTML signifie en utilisant balises que décrire ce que contenu est —
<article>,<nav>,<main>,<header>— au lieu de wrapping tout dans plain<div>s. Il aide moteur de recherches et screen lecteurs comprendre votre page, mais il est pas a facteur de classement. En utilisant<article>ne va pas faire vous classer plus élevé. Le même règle s’applique past landmarks aussi:<a href>pour liens,<button>pour actions,<table>pour tabular données, réel texte alternatif on images. Utiliser le correct balise pour le job et vous êtes la plupart de le façon là.
Ce que semantic HTML is
Chaque partie de a page web est construit depuis HTML elements. Semantic HTML simplement signifie picking le element que matches ce que le contenu en réalité est, au lieu de en utilisant a générique wrapper pour tout.
Comparer ces two versions of the même page structure:
<!-- Non-semantic: "div soup" -->
<div class="top"> ... </div>
<div class="menu"> ... </div>
<div class="content"> ... </div>
<div class="sidebar"> ... </div>
<div class="bottom"> ... </div><!-- Semantic: the tags describe the roles -->
<header> ... </header>
<nav> ... </nav>
<main> ... </main>
<aside> ... </aside>
<footer> ... </footer>«Both can look identical on screen — CSS handles the styling. The difference is that the second version tells a machine (a search engine, a screen reader, an AI crawler) which part is the navigation, which is the main content, and which is a sidebar. The first version makes everyone guess. » (Traduction) (Résumé en français de la section dix, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«## The elements you’ll actually use » (Traduction) (Résumé en français de la section onze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <header> — introductory content at the top of the page (or the top of a section).
» (Traduction) (Résumé en français de la section douze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <nav> — a block of navigation links.
» (Traduction) (Résumé en français de la section douze, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <main> — the primary, unique content of the page. One per page.
» (Traduction) (Résumé en français de la section douze, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <article> — a self-contained piece that could stand on its own (a blog post, a
product card, a comment).
» (Traduction) (Résumé en français de la section douze, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <section> — a thematic grouping of content that has its own heading.
» (Traduction) (Résumé en français de la section douze, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <aside> — content that’s tangential to the main content (a sidebar, a callout).
» (Traduction) (Résumé en français de la section douze, sous-partie six : le texte source est conservé pour vérification lors de la relecture francophone.)
«- <footer> — closing content (copyright, secondary links).
» (Traduction) (Résumé en français de la section douze, sous-partie sept : le texte source est conservé pour vérification lors de la relecture francophone.)
Le même “use the right tag” idea s’applique ci-dessous lune page-layout level aussi: <a href>
pour liens, <button> pour sur la page actions, <table> pour réel tabular données, et
purpose-based alt texte on images. Fake liens construit depuis styled <div>s sont le
unique la plupart courant accessibility miss — voir le Avancé tab pour le complet liste.
The chose la plupart personnes obtenir incorrect
Wrapping votre contenu dans <article> ne fait pas boost votre rankings. Google’s
John Mueller a said le <article> element a “no particular effect” dans Google
Recherche, et que semantic HTML est “not a magical multiplier.” Semantic HTML aide
moteur de recherches comprendre votre page — il simplement n’est pas a lever vous pull à classer plus élevé.
Le valeur est réel, c’est simplement pas “ranking points.” Clean semantic markup rend il easier pour moteur de recherches à tell votre principal contenu apart depuis le boilerplate (menus, footers, ads), il rend votre page fonctionner correctement pour personnes en utilisant screen lecteurs, et c’est easier pour AI outils à lire. Ceux sont tout bon raisons à faire il — none de les est “it’s a ranking factor.”
Un plus trap: Semantic HTML n’est pas le même as “Semantic SEO.” Semantic HTML est à propos de markup structure. Semantic SEO est à propos de topics et entities dans votre contenu. Même word, totally différent chose.
Vouloir le complet picture — ce que chaque element signaux, ce que Google et Bing en réalité dire, comment il fits main-contenu extraction, et a retrofit liste de contrôle? Switch à le Avancé tab.
Preuve à l’appui de cette affirmation Semantic HTML uses elements according to their defined purpose and structural meaning. Portée : HTML element semantics. Niveau de confiance : élevé · Vérifié : WHATWG HTML: Semantics Preuve à l’appui de cette affirmation Native semantic HTML exposes built-in roles and supports accessible structure when elements are used correctly. Portée : W3C guidance on semantic HTML and accessibility. Niveau de confiance : élevé · Vérifié : W3C WAI: HTML and accessibilityTL;DR — Semantic HTML utilise elements pour leur prévu structural meaning (
<main>,<article>,<section>,<nav>,<header>,<aside>) donc markup communicates ce que contenu est, pas comment il semble. Il est pas a facteur de classement — Mueller: “not a magical multiplier,” et<article>a “no particular effect.” Ce que il fait est reduce ambiguity: Google’s centerpiece annotation separates principal contenu depuis boilerplate via NLP si or pas votre markup est semantic, mais clean semantics faire que job plus fiable. Bing’s Fabrice Canel frames il plus strongly (“an advantage dans SEO”) — Je remarque que gap honestly plutôt que harmonizing il away. Google’s propre Starter Guide dit la plupart de le web n’est pas valide HTML, donc il rarely dépend on spec semantics. Correct usage beats presence: un<main>,<article>pour self-contained contenu,<section>pour a themed groupe avec a titre — pas a<div>substitute. Le même tester extends à<a href>vs.<button>(navigate vs. act), réel<table>s pour tabular données, purpose-based image texte alternatif, et<details>/<summary>pour disclosure widgets — et ne pas rely on<section>nesting à imply a titre level; que “document outline algorithm” était jamais implemented et le spec ne … plus defines outlines que façon. ne pas confuse semantic HTML avec Semantic SEO.
Ce que semantic HTML en réalité is
«Semantic HTML is the practice of choosing HTML elements for the structural meaning
they were designed to convey, rather than reaching for <div> and <span> for
everything. <article>, <section>, <nav>, <header>, <main>, <aside>, and
<footer> each declare a role. The markup describes what a chunk of the page is;
CSS decides how it looks. Google’s own developer style guide puts the rule as simply
as it gets: “Use HTML elements for the purposes that they were designed for.”
» (Traduction) (Résumé en français de la section vingt-quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Un chose que trips personnes up: a class nom ne fait pas créer semantics. Naming a
<div> class="article" or class="main-nav" ne fait pas donner il le <article>
element’s contenu model or le <nav> element’s implicit navigation role — c’est
encore a générique <div> as far as a navigateur, screen lecteur, or robot d’exploration est concerned.
Semantics actif dans le element vous choisir, pas dans comment vous style or étiquette il.
Ce article est à propos de le semantic elements précisément. Le broader “comment Google parses votre HTML, titre hierarchy, validity” picture belongs à le HTML SEO hub ce page sits sous — je vais cross-reference il plutôt que re-litigate il ici.
Fait semantic HTML en réalité aider SEO?
Court réponse: il aide understanding, il n’est pas a facteur de classement, et le deux moteurs frame il a little differently. Ici’s le honest version.
Ce que Google dit
Google’s line, repeated by John Mueller, is que semantic HTML is worth doing but isn’t a ranking lever. As Moteur de recherche Journal reported, Mueller said “Semantic HTML fait aider to comprendre une page. Cependant, it’s pas a magical multiplier pour making a website rank plus élevé,” and separately: “Please utiliser semantic HTML. It’s pas a ranking factor, but it peut aider our systems to comprendre votre content meilleur.”
On le <article> element précisément — le un everyone demande à propos de — Mueller était
blunt dans an Office Hours session: le <article> element “ne fait pas ont quelconque
particulier effect dans la recherche Google,”
et il ajouté le raison à utiliser il anyway: “Parfois là sont accessibility or
semantic raisons à utiliser a spécifique kind de markup, donc ne pas seulement focus on SEO.”
«Google also explicitly says it doesn’t depend on perfect semantics. Its SEO Starter Guide notes that “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.” That’s an important nuance, not a contradiction: semantic HTML helps at the margins, it doesn’t require perfection, and it isn’t a scored signal. » (Traduction) (Résumé en français de la section trente-deux, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
How it fits Google finding votre principal content
Ici’s le mechanism que rend semantic HTML utile même though il n’est pas a classement factor. Google a à séparé le principal contenu de une page depuis le boilerplate (nav, header, footer, sidebars, ads) avant il peut decide ce que une page est à propos de. Martin Splitt a décrit le machinery: “Nous ont a chose appelé le Centerpiece Annotation, pour instance, et il y a a quelques autre annotations que nous ont où nous regarder à le semantic contenu.” Le façon Google figures out le topic est natural langue processing over le contenu, pas le balise noms: “Ce semble comme depuis tout le natural langue processing que nous a fait on ce entier texte contenu ici que nous obtenu, il semble comme ce est primarily à propos de topic A, dog food.” Et il down-weights le rest: “Nous figure out ce que semble comme boilerplate et alors, que obtient weighted differently as bien.”
Le clé point: que extraction fonctionne si or pas votre markup est semantic.
Google peut untangle une page construit entirely depuis <div>s. Mais asked directement si
semantic HTML5 aide, Splitt’s réponse était “Il fait aider us, mais c’est pas le seulement
chose que nous regarder pour. Oui.”
Donc semantic HTML ne fait pas score vous plus élevé — il reduces le guesswork dans a étape Google
déjà fait, qui est exactly pourquoi c’est a confidence et efficiency signal plutôt
que a classement un. À être precise à propos de ce que il ne fait pas faire: correct semantic markup
ne fait pas guarantee quelconque spécifique recherche presentation soit — c’est a séparé couche
depuis le eligibility règles que govern résultats enrichis (plus on que ci-dessous).
Ce que Bing dit (and pourquoi it differs)
Bing frames ce plus strongly que Google, et Je’m going à laisser que difference intact plutôt que paper over il. Microsoft’s Fabrice Canel a said que pages avec correctement implemented semantic HTML5 ont “an advantage dans SEO” over ceux que ne pas. c’est a stronger claim que Google’s “helps us understand” — Bing ties semantic HTML5 directement à an SEO advantage. Les deux moteurs converge on “it helps mechanically,” mais ils ne pas utiliser le même words, et vous devez know que quand vous lire competing guidance. Aucun, à être clair, décrit il as a scored facteur de classement le façon liens or pertinence sont.
Le core semantic elements et Comment utiliser les correctement
Presence n’est pas le point — correct usage est. Le la plupart courant échec mode est
sprinkling semantic balises autour comme decoration, or swapping <div> pour <section>
avec aucun thought à propos de ce que chaque element signifie.
<header> and <footer>
<header> holds introductory contenu et <footer> holds closing contenu — et les deux
sont contextual. À le document level, <header> est votre site banner et <footer>
est votre site footer. Mais ils peut aussi nest à l’intérieur an <article> or <section> à
mark que bloquer’s propre intro et outro (an article’s titre/byline dans a <header>, son
balises dans a <footer>). Vous pouvez ont nombreux de les; simplement assurez-vous chaque un wraps intro
or closing contenu pour son context, pas arbitrary boxes.
<nav>
<nav> est pour major bloque de navigation liens — votre principal menu, breadcrumb
trail, or dans-page tableau de contents. Il n’est pas pour chaque groupe de liens on lune page
(a liste de connexe posts dans le corps ne fait pas besoin à être a <nav>). Wrapping chaque
lien cluster dans <nav> dilutes le signal; reserve il pour genuine navigation.
<main>
«<main> wraps the page’s primary, unique content — the part that isn’t repeated
across the site. The rule that trips people up: there should be exactly one
<main> per page, and it should not be nested inside <article>, <aside>,
<header>, <footer>, or <nav>. It’s the single clearest signal you can give about
“this is the content that matters here.”
» (Traduction) (Résumé en français de la section quarante-cinq, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
<article> vs <section> (the un everyone obtient incorrect)
Ce is the distinction to obtenir correct:
<article>est pour self-contained, independently distributable contenu — quelque chose que voudrait encore faire sense pulled out de lune page et dropped dans a feed. A blog post, a news story, a produit card, a forum post, a unique utilisateur comment. Si il pourrait syndicate on son propre, c’est an<article>.<section>est a thematic grouping de contenu que devrait ont son propre titre. A “Reviews” bloquer, a “Specifications” bloquer, a chapter. Le tester: si le contenu ne fait pas faire sense avec a titre, c’est probably pas a<section>— et si vous êtes seulement en utilisant il à hang some CSS on, il devrait être a<div>.
<section> est pas a générique wrapper. Quand vous besoin a styling hook avec aucun semantic
meaning, utiliser <div> — c’est exactly ce que c’est pour. Reaching pour <section> parce que
il “feels more modern” est le unique la plupart courant misuse.
<aside>
<aside> marks contenu c’est tangential à le surrounding contenu — a sidebar,
a pull citation, a related-liens box, a définir de ads. Il signaux “ce est connexe mais pas
le principal thread,” qui est precisely le boilerplate-vs-main-contenu distinction Google
est trying à draw anyway. ne pas utiliser il simplement parce que quelque chose sits visually à le side;
utiliser il quand le contenu est genuinely secondary.
Getting le landmark roles correct (et le outline myth)
Chaque landmark element maps à a spécifique implicit ARIA role que assistive tech lit directement — ce est le même computed structure a non-visual utilisateur navigates par, et c’est worth knowing le réel mapping au lieu de assuming:
«| Element | Implicit role | Note |
|---|---|---|
| <header> (document level) | banner | Only at the top level — nested inside <article>/<aside>/<main>/<nav>/<section>, it has no landmark role. |
| <footer> (document level) | contentinfo | Same caveat — nested, it’s not a landmark. |
| <nav> | navigation | |
| <main> | main | |
| <aside> | complementary | |
| <article> | article (not a landmark) | A document-structure role, not one of the navigable landmarks. |
| <section> | region — but only with an accessible name (e.g. via a heading) | An unnamed <section> has no implicit role at all, which is another reason not to use it as a <div> substitute. |
» (Traduction) (Résumé en français de la section cinquante-quatre, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«One piece of folklore worth retiring: nesting a <section> does not give its
headings an implicit lower rank. Early HTML5 defined a document outline algorithm
that would have computed a heading’s effective level from how deeply it was nested
inside sectioning elements — so a nested <h1> could theoretically “act like” an
<h2>. No browser or screen reader ever implemented that algorithm, and the
WHATWG spec has since dropped
it in favor of a much simpler definition: the outline is just all the headings in the
document, in tree order. Write your <h1>–<h6> levels explicitly and in the order
you actually want read — nesting depth doesn’t do that work for you.
» (Traduction) (Résumé en français de la section cinquante-cinq, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«### Links vs. buttons — the action-versus-navigation test » (Traduction) (Résumé en français de la section cinquante-six, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«This one isn’t a landmark element, but it’s the most common semantic mistake on the
web: using a styled <div> or <span> (or a <button>) where an <a href> belongs,
or vice versa. The WHATWG spec is
specific — <a> with an href attribute is the native hyperlink mechanism, and the
<button> element
is a labeled interactive control for triggering an action. The test is simple: does
this take the user to something (a new URL, a new page, a fragment)? Use <a href>.
Does it do something on the current page (submit a form, open a modal, toggle a
setting)? Use <button>. Styling one to look like the other doesn’t change what it
natively is — a <div> with a click handler gets neither native keyboard activation
nor the correct accessible role unless you rebuild all of that yourself with role,
tabindex, and key handlers. Just use the right element.
» (Traduction) (Résumé en français de la section cinquante-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«### Tables are for tabular data, not layout » (Traduction) (Résumé en français de la section cinquante-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«If content genuinely has rows and columns — a comparison table, a pricing grid, a
data set — use an actual <table>, not a grid of styled <div>s. The
WHATWG tables spec defines a real
data model: <caption> names the table, and <th> header cells (with scope)
establish the row/column relationships that let assistive tech announce “price,
$49” instead of just a wall of numbers. A visually table-like grid built from <div>s
doesn’t carry any of that relationship data — it looks right, it doesn’t read right.
Don’t use <table> for page layout, either; that’s the older misuse this practice
replaced.
» (Traduction) (Résumé en français de la section cinquante-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«### Alt text depends on what the image is for » (Traduction) (Résumé en français de la section soixante, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«<img> needs an alt attribute, but the WHATWG spec’s requirements
are purpose-dependent, not one-size-fits-all: a product photo needs a description of
what’s shown; an image that’s purely decorative should get alt="" (empty, not
missing) so assistive tech skips it instead of announcing a filename; an image that’s
also a link needs alt text describing the link’s destination or action, not just the
picture. Don’t default to keyword-stuffed alt text on every image “for SEO” — that’s
the wrong test. The right test is: what does a screen reader user need to know that
they’d otherwise miss?
» (Traduction) (Résumé en français de la section soixante et un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«### Native disclosure widgets: <details> and <summary>
» (Traduction) (Résumé en français de la section soixante-deux, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Pour “click to expand” contenu — FAQs, spec sheets, spoiler texte — le
<details>/<summary> pair
est a native disclosure widget: <summary> est le toujours-visible étiquette, et le
contenu à l’intérieur <details> montre or hides fondé on le element’s open state,
sans quelconque JavaScript. Il comes avec built-dans keyboard prise en charge et le correct
accessible semantics pour gratuit — reaching pour a custom <div>-plus-JavaScript accordion
signifie re-implementing behavior le navigateur déjà donne vous. Tester il dans votre réel
cible navigateurs et screen lecteurs avant shipping, though — rendu et
accessibility-tree exposure pour <details>/<summary> a historically varied par
navigateur et assistive-tech combination, donc ne pas assume parity vous haven’t vérifié.
Courant myths à propos de semantic HTML and SEO
- “Wrapping contenu dans
<article>boosts rankings.” Aucun — Mueller: le<article>element “fait pas ont tout particular effect dans Google Search.” - “Semantic HTML est a facteur de classement.” Aucun — “not a magical multiplier” et “c’est pas a facteur de classement, mais il peut aider notre systèmes à comprendre votre contenu meilleur.”
- “Google exige valide/strict semantic HTML.” Aucun — per le Starter Guide, la plupart de le web n’est pas valide HTML et Google “peut rarely depend on semantic meanings hidden dans le HTML specification.”
- “Titre order a à être perfect pour SEO.” Screen lecteurs care; Google classement ne fait pas (même Starter Guide line). Le deeper titre-hierarchy treatment belongs à le HTML SEO hub — ce est simplement le brief version.
- “Semantic HTML et Semantic SEO sont le même thing.” Aucun — un est markup structure, le autre est topical/entity contenu stratégie. Conflating les est pourquoi donc nombreux recherche résultats pour “semantic” requêtes sont à propos de le incorrect topic.
- “Données structurées rend semantic HTML unnecessary.” Aucun — ils sont complementary. Semantic HTML donne votre données structurées a plus trustworthy foundation; il ne fait pas remplacer il, et JSON-LD ne fait pas corriger div soup. Et aucun un guarantees an résultat: Google’s propre structured-données intro est explicit que en utilisant pris en charge markup ne fait pas guarantee a rich résultat — eligibility pour a spécifique recherche fonctionnalité est a séparé définir de règles depuis si votre markup (semantic HTML or JSON-LD) est technically valide.
- “Nesting a
<section>donne son titres an implicit lower classer — vous ne pas besoin à drop depuis<h1>à<h2>à l’intérieur a nested section.” Aucun — ce est a leftover depuis HTML5’s old document outline algorithm, qui voudrait ont computed an implicit titre classer depuis sectioning-element nesting. Aucun navigateur or screen lecteur ever implemented il, et le WHATWG HTML spec ne … plus defines outline computation que façon — le outline aujourd’hui est simplement “tout titres dans le document, dans tree order.” Utiliser explicit, correctly-ordered<h1>–<h6>regardless de comment deep votre<section>/<article>nesting goes; ne pas rely on nesting à faire titre-level fonctionner pour vous.
Semantic HTML vs. Semantic SEO — don’t confuse les
Parce que ils share a word, ces obtenir mixed up constantly, et il pollutes le recherche résultats pour les deux:
- Semantic HTML = le markup — qui elements vous utiliser à structure une page.
- Semantic SEO = a contenu stratégie — building topical autorité autour entities et connexe concepts (le kind de chose que lives sous le AI Recherche et contenu pillars, pas ici).
Si vous landed ici depuis a “semantic SEO” requête expecting topic modeling, c’est a différent article. Ce un est strictly à propos de le elements.
Semantic HTML and AI/LLM robots d’exploration
«This is where semantic HTML is quietly getting more relevant, and I’ll flag it as
industry opinion rather than an engine statement. Many LLM crawlers and AI answer
engines don’t render JavaScript — they parse the HTML they’re served. Clean semantic
markup is far easier for them to work with than deeply nested <div> soup. As Barry
Adams puts it, “It’s much simpler for ChatGPT to parse a few dozen semantic HTML
tags rather than several hundred (or even thousand) nested <div> tags,”
and more broadly, “Semantic HTML markup on your webpages can help machine systems
better understand your content and its value.”
Jono Alderson makes the same forward-looking case — that a site is “an interface. An
API. A dataset,”
not just a visual experience — and his one-liner is the whole argument for correct
usage: “If everything is a <div> or a <span>, then nothing is meaningful.”
Treat all of this as a good directional reason to keep your markup clean, not as a
promise from Google or Bing.
» (Traduction) (Résumé en français de la section soixante-onze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Comment audit et retrofit existing pages
La plupart réel sites sont déjà div soup, et vous ne pas rebuild les overnight. A pragmatic retrofit order:
- Establish le landmarks premier. Assurez-vous il y a exactly un
<main>, a document<header>,<footer>, et a<nav>pour le principal menu. Ces landmark elements faire le la plupart fonctionner pour les deux main-contenu extraction et accessibility. - Convert self-contained bloque à
<article>. Blog posts, produit cards, comments — n’importe quoi que pourrait stand alone dans a feed. - Convert genuine themed groupes à
<section>— mais seulement où il y a a réel titre. Si là n’est pas un, laisser il a<div>. - Déplacer sidebars et related-contenu boxes dans
<aside>. - Corriger fake liens et fake buttons. A styled
<div>avec a click handler devrait become an<a href>(si il navigates) or a<button>(si il acts on lune page) — ce est généralement le highest-valeur unique corriger pour keyboard et screen lecteur utilisateurs. - Convert tableau-like grids de
<div>s à réel<table>s où le contenu est genuinely tabular, avec<caption>et<th>pour le header cells. - ne pas over-convert. A
<div>utilisé purely as a styling/layout hook est correct. Pas tout nécessite a semantic element; forcing un est son propre mistake. - Vérifier, ne pas assume. Vérifier le accessibility tree dans votre navigateur’s DevTools — il exposes le landmark roles votre markup produces, qui est le même structure le machines lire.
How ce fits into the HTML SEO hub
Ce article est un deep dive sous le parent HTML SEO hub, qui covers le wider question de comment moteur de recherches parse et utiliser votre HTML — titre hierarchy, HTML validity, et comment forgiving parsers handle messy markup. j’ai deliberately kept ce page scoped à le semantic elements themselves et left ceux topics à le hub et son sibling articles. Semantic HTML aussi pairs directement avec données structurées: le markup donne votre schema a trustworthy foundation, et le deux faire complementary jobs.
FAQs
Fait semantic HTML aider SEO or is it simplement pour accessibility? Les deux — it helps search engines identifier votre principal content and it’s essential pour accessibility. But it n’est pas a ranking factor.
Fait en utilisant the <article> tag améliorer rankings? Aucun. Mueller: it “ne fait pas have quelconque
particulier effect dans la recherche Google.”
qu’est-ce que le difference entre <article> et <section>? <article> est self-contained
contenu que pourrait stand alone dans a feed; <section> est a themed grouping avec son propre
titre. Aucun est a <div> replacement.
Peut I have plus que un <main> element on une page? Aucun — un <main> par page.
Fait Google exiger valide HTML à classer une page? Aucun — la plupart de le web n’est pas valide HTML, et Google “peut rarely depend on semantic meanings hidden dans le HTML specification.”
Is semantic HTML the même as semantic SEO? Aucun — un is markup, the autre is topical/entity content strategy.
Devrait Je utiliser <a> or <button> pour a clickable element? Dépend ce que il fait.
Si il navigates à une URL or fragment, utiliser <a href>. Si il performs an action on le
actuel page (submit, toggle, ouvrir a modal), utiliser <button>. ne pas fake un avec a
styled <div> et a click handler.
Fait nesting <section> modifier ce que titre level Je devrait utiliser? Aucun. HTML5’s old
document outline algorithm — qui voudrait ont computed an implicit titre classer depuis
sectioning nesting — était jamais implemented par quelconque navigateur or screen lecteur, et le
actuel spec ne fait pas define outlines que façon. Utiliser explicit, correctly-ordered
<h1>–<h6> regardless de nesting depth.
Fait correct semantic HTML or données structurées guarantee a rich result? Aucun. Google’s propre structured-data documentation dit pris en charge markup doesn’t guarantee a spécifique search presentation — eligibility pour a fonctionnalité is separate from si votre markup is technically valid.
Preuve à l’appui de cette affirmation 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. Portée : supported structured-data features Niveau de confiance : élevé · Vérifié : Introduction to structured data markup in Google SearchAI summary
A condensed prendre on the Avancé version:
- Semantic HTML = en utilisant elements pour leur prévu meaning (
<main>,<article>,<section>,<nav>,<header>,<aside>,<footer>) donc markup dit ce que contenu est. CSS handles semble. - Pas a facteur de classement. Mueller: “not a magical multiplier”; le
<article>element a “no particular effect” dans la recherche Google. Utiliser il pour accessibility/clarity, pas classement points. - Il aide main-contenu extraction. Google’s centerpiece annotation separates principal contenu depuis boilerplate via NLP regardless de markup (Splitt), donc il fonctionne on div soup aussi — mais semantic markup reduces le guesswork. Splitt: “Il fait aider us, mais c’est pas le seulement chose que nous regarder pour.”
- Google ne fait pas exiger valide HTML. Starter Guide: la plupart de le web n’est pas valide, donc Google “peut rarely depend on semantic meanings hidden dans le HTML specification.”
- Bing frames il plus strongly. Fabrice Canel: semantic HTML5 donne “an advantage dans SEO.” Remarque le gap honestly — Bing’s wording est stronger que Google’s; aucun calls il a scored facteur de classement.
- Correct usage beats presence: un
<main>;<article>= self-contained;<section>= themed groupe avec a titre, pas a<div>substitute;<nav>= major navigation seulement;<aside>= tangential contenu. - Landmark elements map à spécifique implicit ARIA roles (
<header>→banner,<nav>→navigation,<main>→main,<aside>→complementary,<footer>→contentinfo— seulement à document level; nested à l’intérieur a section ils sont pas landmarks).<section>est seulement a landmark (region) si il a an accessible nom;<article>n’est pas a landmark à tout. - Le document outline algorithm myth: nesting a
<section>ne fait pas donner son titres an implicit lower classer. Que algorithm était jamais implemented par quelconque navigateur or screen lecteur et le WHATWG spec ne … plus defines outlines que façon — écrire explicit<h1>–<h6>levels. - Au-delà landmarks: utiliser
<a href>pour navigation vs.<button>pour sur la page actions; réel<table>s (avec<caption>/<th>) pour tabular données, pas<div>grids; purpose-basedalttexte on images (alt=""pour decorative);<details>/<summary>pour native disclosure widgets — tester navigateur/À rendu avant shipping. - AI/LLM angle (industry opinion): LLM robots d’exploration souvent ne pas rendre JS, donc clean
semantic HTML est easier à parse que nested
<div>s (Adams, Alderson). - ne pas confuse il avec Semantic SEO (entity/topic stratégie) — même word, différent chose. Données structurées complements semantic HTML, il ne fait pas remplacer il, et aucun guarantees a rich résultat or a classement gain.
«## Official documentation » (Traduction) (Résumé en français de la section quatre-vingt-quatorze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Primary-source documentation and style guidance from the search engines and standards bodies. » (Traduction) (Résumé en français de la section quatre-vingt-quinze, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«Google » (Traduction) (Résumé en français de la section quatre-vingt-seize, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- SEO Starter Guide — the “things you shouldn’t focus on” section, including the heading-order / semantic-meanings caveat. » (Traduction) (Résumé en français de la section quatre-vingt-seize, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- Google Developer Documentation Style Guide — HTML and semantic tagging — “Use HTML elements for the purposes that they were designed for.” » (Traduction) (Résumé en français de la section quatre-vingt-seize, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.) «- web.dev — Learn HTML: Semantic HTML — Google’s own learning module on landmark elements and their accessibility roles. » (Traduction) (Résumé en français de la section quatre-vingt-seize, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«Standards / reference
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
«- MDN — Semantics (glossary) — the canonical definition of semantic elements vs. non-semantic wrappers.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WHATWG HTML Living Standard — Sections — <article>, <section>, <nav>, <aside>, <header>, <footer> definitions, content models, and the current (non-algorithmic) definition of a document’s outline.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WHATWG HTML Living Standard — Links — the <a> element and hyperlink semantics.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie quatre : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WHATWG HTML Living Standard — The button element — native interactive-control semantics.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie cinq : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WHATWG HTML Living Standard — Tabular data — <table>, <caption>, header-cell and data-relationship semantics.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie six : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WHATWG HTML Living Standard — Images — <img> alternative-text requirements by purpose/context.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie sept : le texte source est conservé pour vérification lors de la relecture francophone.)
«- WHATWG HTML Living Standard — The details and summary elements — the native disclosure widget.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie huit : le texte source est conservé pour vérification lors de la relecture francophone.)
«- MDN — ARIA roles reference — implicit landmark role mappings for the sectioning elements.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie neuf : le texte source est conservé pour vérification lors de la relecture francophone.)
«- W3C WAI — Page Structure Tutorial — how native regions and headings support assistive-technology navigation.
» (Traduction) (Résumé en français de la section quatre-vingt-dix-sept, sous-partie dix : le texte source est conservé pour vérification lors de la relecture francophone.)
«Bing / Microsoft » (Traduction) (Résumé en français de la section quatre-vingt-dix-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- Kalicube — HTML5 Semantic Tags (Fabrice Canel) — the source for Canel’s “advantage in SEO” position on semantic HTML5. » (Traduction) (Résumé en français de la section quatre-vingt-dix-huit, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.)
«## Quotes from the source » (Traduction) (Résumé en français de la section cent un, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
On-le-record statements depuis Google et Bing. Où le page source prend en charge il, chaque lien est a deep lien que jumps à le quoted passage.
Google — pas a ranking factor (John Mueller)
- “Semantic HTML fait aider à understand a page. However, c’est pas a magical multiplier pour making a site web classer higher.” — John Mueller, Google, via Moteur de recherche Journal. Lire le coverage
- “Please utiliser semantic HTML. c’est pas a facteur de classement, mais il peut aider notre systèmes à understand votre contenu meilleur.” — John Mueller, Google, même source. Lire le coverage
Google — le <article> element précisément (John Mueller)
- “Le
<article>HTML element fait pas ont tout particular effect dans Google Search.” — John Mueller, Google SEO Office Hours, via Moteur de recherche Journal. Lire le coverage - “Parfois là sont accessibility or semantic reasons à utiliser a spécifique kind de markup, donc ne pas seulement focus on SEO.” — John Mueller, Google SEO Office Hours, même source. Lire le coverage
Google — main-contenu extraction (Martin Splitt)
«- “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.” — Martin Splitt, Google, via Search Engine Journal. Read the coverage » (Traduction) (Résumé en français de la section cent huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.) «- “We figure out what looks like boilerplate and then, that gets weighted differently as well.” — Martin Splitt, same source. Read the coverage » (Traduction) (Résumé en français de la section cent huit, sous-partie deux : le texte source est conservé pour vérification lors de la relecture francophone.) «- “It does help us, but it’s not the only thing that we look for. Yes.” — Martin Splitt, answering directly whether semantic HTML5 helps Google. Jump to quote » (Traduction) (Résumé en français de la section cent huit, sous-partie trois : le texte source est conservé pour vérification lors de la relecture francophone.)
Google — ne fait pas depend on valide/spec semantics (SEO Starter Guide)
- “Having votre titres dans semantic order est fantastic pour screen lecteurs, mais depuis Google Search perspective, il ne fait pas matter si vous êtes en utilisant les out de order. Le web dans general est pas valide HTML, donc Google Search peut rarely depend on semantic meanings hidden dans le HTML specification.” — Google SEO Starter Guide. Jump à citation
Google — utiliser elements pour leur objectif (Style Guide)
- “Utiliser HTML elements pour le purposes ce ils étaient designed pour.” — Google Developer Documentation Style Guide. Lire le source
Bing / Microsoft (Fabrice Canel)
- Fabrice Canel de Microsoft Bing a said que pages avec correctement implemented semantic HTML5 ont an advantage dans SEO over ceux que ne pas — Bing’s framing est stronger que Google’s “helps understanding,” though il encore n’est pas décrit as a scored facteur de classement. Paraphrased, pas quoted verbatim: ce est reached via a secondary citation (Kalicube), pas a récupéré Bing principal source — confirmer le exact wording contre le original avant treating il as a direct citation. Lire le source
#:~:text= deep liens; le others lien à le source
article. Qui element fait ce block besoin?
«The article-vs-section-vs-div question (and the rest of the landmark choices) is a genuine branch, not a style preference. Answer honestly at each step — the test is always “what does this content actually do,” not “what looks more modern.” » (Traduction) (Résumé en français de la section cent dix-neuf, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Choosing the correct semantic element
Ce que pas to do
Ces sont le réel mistakes le myths ci-dessus point à — chaque avec pourquoi c’est incorrect et Que faire à la place.
-
Wrapping contenu dans
<article>expecting a classement boost. Pourquoi c’est incorrect: Mueller a said le element “fait pas ont tout particular effect dans Google Search.” Que faire à la place: utiliser<article>quand le contenu est genuinely self-contained (pourrait stand alone dans a feed), pour accessibility et clarity — pas as an SEO lever. -
Treating semantic HTML généralement as a scored facteur de classement. Pourquoi c’est incorrect: c’est “not a magical multiplier” et il y a aucun scored signal à chase. Que faire à la place: budget le fonctionner as an understanding/accessibility investment avec a réel (si unmeasurable-as-classer) payoff, pas a rankings project avec an attendu lift.
«- Obsessing over perfect heading order or strict validity for Google’s sake. Why it’s wrong: Google’s own Starter Guide says “the web in general is not valid HTML, so Google Search can rarely depend on semantic meanings hidden in the HTML specification.” What to do instead: fix heading order and validity for screen readers and users — that’s where it actually matters — not because Google is scoring it. » (Traduction) (Résumé en français de la section cent vingt-sept, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
-
En utilisant
<section>as a<div>replacement parce que il “feels more modern.” Pourquoi c’est incorrect:<section>sans a titre n’est pas a themed grouping, c’est decoration — ce est le unique la plupart courant misuse de le element. Que faire à la place: si le bloquer ne fait pas faire sense avec son propre titre, utiliser<div>. -
Confusing Semantic HTML avec Semantic SEO. Pourquoi c’est incorrect: un est markup structure, le autre est topical/entity contenu stratégie — conflating les signifie optimizing le incorrect chose pour le goal vous en réalité ont. Que faire à la place: garder le deux séparé; ce article est seulement à propos de le elements.
-
Skipping semantic HTML parce que données structurées déjà exists. Pourquoi c’est incorrect: JSON-LD ne fait pas corriger div soup, et données structurées n’est pas a substitute pour markup structure. Que faire à la place: utiliser les deux — données structurées sits on top de a semantic foundation, il ne fait pas remplacer il. Aucun un guarantees a rich résultat, soit — c’est a séparé eligibility question depuis markup validity.
-
Nesting
<section>elements à faire titres “act like” a lower level. Pourquoi c’est incorrect: ce relies on HTML5’s old document outline algorithm, qui aucun navigateur or screen lecteur ever implemented et qui le actuel WHATWG spec ne … plus defines que façon. Que faire à la place: écrire explicit, correctly-ordered<h1>–<h6>levels — ne pas let nesting depth stand dans pour le titre classer vous en réalité signifier. -
En utilisant a
<div>avec a click handler au lieu de<a href>or<button>. Pourquoi c’est incorrect: vous lose native keyboard activation et le correct accessible role unless vous manuellement rebuild les deux avecrole,tabindex, et clé handlers. Ce que à faire à la place: utiliser<a href>quand le action navigates somewhere,<button>quand il fait quelque chose on le actuel page — et obtenir le native behavior pour gratuit.
Landmark elements En un coup d’œil
Le seven elements ce article covers, ce que chaque est en réalité pour, et le misuse modèle à éviter.
| Element | Utiliser pour | Courant misuse |
|---|---|---|
<header> | Intro contenu — site banner, or an article/section’s propre titre/byline | En utilisant il pour contenu que n’est pas en réalité introductory |
<nav> | Major navigation — principal menu, breadcrumbs, dans-page TOC | Wrapping chaque lien cluster (e.g. a related-posts liste) dans <nav>, diluting le signal |
<main> | Lune page’s unique principal, unique contenu | Having plus que un <main>, or nesting il à l’intérieur <article>/<aside>/<header>/<footer>/<nav> |
<article> | Self-contained contenu que pourrait stand alone dans a feed (post, produit card, comment) | En utilisant il purely à essayer à boost rankings — il a “no particular effect” per Mueller |
<section> | A themed grouping de contenu que a son propre titre | En utilisant il as a générique <div> substitute avec aucun titre et aucun réel theme |
<aside> | Tangential contenu — sidebar, pull citation, related-liens box, ad | En utilisant il simplement parce que quelque chose sits visually à le side, pas parce que c’est genuinely secondary |
<footer> | Closing contenu — site footer, or an article/section’s propre balises/metadata | Treating il as a dumping ground pour n’importe quoi à le bottom de a bloquer |
Rapide rule of thumb: si a block pourrait syndicate on its propre, it’s <article>; si it
nécessite a heading to faire sense, it’s <section>; si it’s neither, it’s a <div>.
Au-delà landmarks: interactive and données elements
| Element | Utiliser pour | Courant misuse |
|---|---|---|
<a href> | Navigating à une URL or fragment | Faking a lien avec a styled <div>/<span> et a click handler que changements l’URL |
<button> | An action on le actuel page (submit, toggle, ouvrir) | Faking a button avec a styled <div> — loses native keyboard activation et role |
<table> | Genuinely tabular données, avec <caption>/<th> | En utilisant il (or a <div> grid pretending à être un) pour page layout au lieu de réel données |
<img alt="..."> | A description de ce que le image montre, scoped à pourquoi c’est là | Mot-clé-stuffed texte alternatif, or manquant alt="" on decorative images |
<details>/<summary> | A native, aucun-JS disclosure widget | Rebuilding an accordion dans <div>+JavaScript au lieu de en utilisant le native element |
Prompts pour retrofitting HTML
Ready-à-copy prompts pour le spécifique task ce article covers: finding div soup et converting il à correct semantic markup. Paste votre page’s HTML (view-source, pas le rendu DOM) dans an AI assistant avec un de ces.
Flag div soup et suggest replacements
Here is the HTML for one of my pages. Identify every <div> or <span> that is standing
in for a semantic landmark, and suggest the correct replacement element from this list:
header, nav, main, article, section, aside, footer. For each suggestion, explain which
test it passes (e.g. "this could stand alone in a feed, so it's an <article>" or "this
has its own heading and one theme, so it's a <section>"). Flag any block that should
stay a <div> because it's purely a styling/layout hook.
[paste HTML here]Vérifier pour landmark structural errors
Review this page's HTML for these specific structural mistakes: more than one <main>
element, a <main> nested inside <article>/<aside>/<header>/<footer>/<nav>, a <nav>
wrapping something that isn't major navigation, or a <section> with no heading. List
each problem found with the line/snippet and the fix.
[paste HTML here]Prioritize a retrofit order
Given this page's HTML, tell me which landmark to fix first for the biggest
accessibility and main-content-extraction benefit: establishing <main>/<header>/
<footer>/<nav>, converting self-contained blocks to <article>, converting themed
groups to <section>, or moving sidebars to <aside>. Order the fixes and say what
"done" looks like for each.
[paste HTML here] Landmarks match votre intended structure
Tester à exécuter: Ouvrir votre navigateur’s DevTools accessibility tree (Chrome/Edge:
DevTools → Elements → Accessibility pane) on le retrofitted page.
Attendu résultat: Le landmark roles listed (banner, navigation, principal, complementary,
contentinfo) match le semantic elements vous en réalité wrote — un main/“main” role,
un banner, etc.
Échec interpretation: A manquant or duplicated landmark role signifie le markup
n’a pas produce le structure vous prévu (e.g. a deuxième <main>, or a <div> que
devrait ont été converted).
Monitoring window: Immediate — vérifier correct après deploying le retrofit.
Rollback trigger: Plus que un main/“main” landmark, or a landmark nested où
il ne devrait pas être (e.g. main à l’intérieur article), signifie undo et re-vérifier le markup.
Exactly un <main> par page
Tester à exécuter: grep -o "<main" page.html | wc -l contre le rendu HTML (or
view-source), or recherche pour <main dans DevTools’ Elements panel.
Attendu résultat: Exactly un match.
Échec interpretation: Zero matches signifie aucun primary-contenu landmark était définir;
plus que un signifie le “unique clearest signal” à propos de principal contenu est maintenant ambiguous.
Monitoring window: Immediate, à deploy temps.
Rollback trigger: Quelconque count autre que exactly un.
Non-rendering robots d’exploration encore voir the structure
«Test to run: Fetch the page with a plain HTTP client (curl or “view page source”,
not the rendered DOM) and confirm the semantic elements are present in the raw
response, not injected later by client-side JavaScript.
Expected result: <header>, <nav>, <main>, <article>/<section>, <aside>,
and <footer> all appear in the initial HTML payload.
Failure interpretation: If the semantic tags only appear after JS execution,
crawlers that don’t render JavaScript (per the AI/LLM-crawler point above) never see
the structure at all.
Monitoring window: Immediate — re-check any time templating or a JS framework
changes how the page renders.
Rollback trigger: Semantic landmarks present in the rendered DOM but absent from
the raw HTML response.
» (Traduction) (Résumé en français de la section cent cinquante-huit, sous-partie un : le texte source est conservé pour vérification lors de la relecture francophone.)
Heading levels are explicit, pas inherited from nesting
Tester à exécuter: Dans votre navigateur’s DevTools accessibility tree (or an outline-checking
extension), liste le titre levels dans document order et comparer les à le réel
<h1>–<h6> balises dans le source, regardless de comment deeply chaque titre sits à l’intérieur
nested <section>/<article> elements.
Attendu résultat: Le reported titre level pour chaque titre matches son literal
balise (an <h2> rapports as level 2 aucun matter comment nombreux sections c’est nested à l’intérieur) —
là est aucun implicit demotion depuis nesting.
Échec interpretation: Si votre template or a component library est relying on
<section> nesting à “automatically” lower a titre’s classer, que assumption ne fait pas
hold — le old document outline algorithm était jamais implemented et le actuel spec
ne fait pas compute outlines que façon. Corriger le réel titre balises.
Monitoring window: Immediate, et quelconque temps a nouveau template or component modèle
introduces nested sections.
Rollback trigger: A titre’s rendu/announced level ne fait pas match son literal
<h1>–<h6> balise.
Fake liens et fake buttons sont keyboard-accessible
Tester à exécuter: Tab via lune page en utilisant seulement le keyboard et essayer à activate chaque
clickable element avec Enter/Space; séparément, vérifier le accessibility tree pour le
role chaque clickable element rapports.
Attendu résultat: Elements que navigate rapport link (native <a href>); elements
que act on lune page rapport button (native <button>) et les deux sont reachable et
activatable par keyboard sans supplémentaire role/tabindex/key-handler code.
Échec interpretation: A <div> or <span> avec a click handler que n’est pas
keyboard-reachable, or que rapports a générique role au lieu de link/button, signifie
il nécessite à être converted à le native element plutôt que patched avec ARIA.
Monitoring window: Immediate — re-vérifier après quelconque component-library or design-système
modifier à interactive elements.
Rollback trigger: Quelconque clickable contrôler que ne peut pas être reached or activated par
keyboard alone.
Testez vos connaissances: Semantic HTML
Five rapide questions on semantic HTML et ce que il fait (et ne fait pas) faire pour le SEO. Pick an réponse pour chaque, alors vérifier.
Journal des modifications
Mis à jour le 18 juil. 2026.
Résumé éditorial et détails enregistrés des changements.Détails des changements
-
Les notes détaillées des changements sont actuellement disponibles en anglais.
-
Les notes détaillées des changements sont actuellement disponibles en anglais.
-
Les notes détaillées des changements sont actuellement disponibles en anglais.
Comparaison complète indisponible — aucun instantané antérieur n’a été archivé pour cette révision.