Skip to content
https://rtl.fr

Accessibility

· 13 checks — Landmarks, headings, alt text, forms, and link quality rolled into one auditable list.
SCORE
55
GRADE
D
FIX
7
REVIEW
5
PASS
1
INFO
0
Checks
13
1 PASS 5 REVIEW 7 FIX
D
Heading Hierarchy
Action
95 headings, 2 skip(s)
FIX
95 headings, 2 skip(s)
Critical::
No H1 heading found
Every page should have one H1 that describes the page content.
Warning::
Heading level skipped: H2 → H4 (missing H3)
Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.
Warning::
Heading level skipped: H3 → H5 (missing H4)
Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.
  • H2 Le grand récit
  • H2 L'heure du Crime
  • H2 Les Grosses Têtes
  • H2 RTL Petit Matin
  • H2 RTL Matin
  • H2 Un jour, une vie
  • H2 Voirla grille des programmes
  • H3 Tchernobyl, bombe à retardement
  • H3 Les secrets de Donald Trump
  • H3 RTL Radio Céline
  • H3 L'épopée verte
  • H3 Iran, histoire d'une guerre
  • H3 Le fantôme de Jeffrey Epstein
  • H3 Richard / Hondelatte : parlons crime
  • H3 Le choix info RTL
  • H3 Des idées pour vivre
  • H3 La maladie chez les adolescents
  • H3 Face à Fogiel
  • H3 Où va le monde ?
  • H3 C'est notre planète
  • H3 Les salauds de l'histoire
  • H3 Les voix du crime
  • H3 100% Grosses Têtes
  • H4 À la une
  • H3 Ligue des champions : le PSG affrontera le Bayern Munich pour viser une place en finale
  • H3 Ligue des champions : le PSG affrontera le Bayern Munich pour viser une place en finale
  • H3 Disparu "du jour au lendemain", une dernière douche fin 2024, sa belle-mère, "sa pire ennemie"... Où en est l'enquête sur l'enfant séquestré en Alsace ?
  • H3 EN DIRECT - Guerre au Moyen-Orient : les États-Unis affirment qu'aucun navire n'a réussi à franchir le blocus des ports iraniens depuis 48h
  • H3 "Nous ne sommes pas des profiteurs" : distributeurs et pompistes vent debout contre le projet d'encadrement des marges du carburant du gouvernement
  • H3 Loi Yadan : pourquoi les députés n'examineront pas la pétition malgré les 700.000 signatures
  • H3 INFO RTL - Cryptomonnaies : hausse spectaculaire des rapts violents, 41 séquestrations en France depuis début 2026
  • H3 Coup dur pour les Bleus : Deschamps confirme le forfait d'Ekitiké au Mondial 2026
  • H2 Flash actu
  • H4 Guerre en Iran skipped
  • H3 “Cela fait un mois qu’on n’est pas ravitaillés” : bloqué dans le détroit d’Ormuz, un marin chinois partage son quotidien depuis le début de la guerre
  • H3 Vers un plafonnement des prix à la pompe ? L'avertissement du gouvernement aux distributeurs
  • H3 Guerre au Moyen-Orient : pourquoi le mois d'avril "devrait être pire" que celui de mars pour le secteur de l'énergie
  • H3 Le blocage du détroit d'Ormuz cache un chaos mondial sur les mers : François Lenglet explique pourquoi l'ensemble des détroits sont menacés
  • H4 Prix des carburants
  • H3 Fin des ZFE : ce qui va changer en France après leur suppression
  • H3 Le pistolet d'une pompe à essence se raccroche mal ? Attention à cette nouvelle arnaque au carburant
  • H3 "Il faut décarboner l'économie française" : sur RTL Clément Caudron de "The Shift Project" présente un plan pour atteindre la neutralité carbone en 2050
  • H3 Prix des carburants : le gouvernement envisage un décret pour encadrer les marges des distributeurs
  • H4 Céline Dion, enfin de retour
  • H3 Céline Dion confirme sa collaboration avec Jean-Jacques Goldman dans une vidéo sur Instagram
  • H3 Concerts de Céline Dion à Paris : les prix de certains billets ont-ils explosé à cause d'une tarification dynamique ?
  • H3 Concerts de Céline Dion : la vente générale des billets ouvre ce vendredi, comment être prêt le jour J pour espérer avoir une place
  • H3 Concerts de Céline Dion : vous n'avez pas été sélectionné pour l'une des préventes ? Il vous reste encore une chance d'obtenir des billets
  • H4 Coupe du monde 2026
  • H3 Gattuso, Buffon... Les démissions se multiplient en Italie, après son troisième échec consécutif en barrages de la Coupe du monde
  • H3 Jusqu'à 30.000 dollars la place ? La dernière phase de la billetterie de la Coupe du monde 2026 a ouvert, à des tarifs exorbitants
  • H3 "Si vous ne voulez pas des Africains, dites-le" : les fans de cinq pays qualifiés au Mondial devront verser jusqu'à 15.000 dollars de caution pour entrer aux États-Unis
  • H3 Équipe de France : derniers matchs de préparation, date de la liste… Le programme des Bleus jusqu'à la Coupe du monde
  • H4 Politique
  • H3 Sébastien Lecornu promet "une solution" pour que les artisans boulangers puissent travailler le 1er-Mai
  • H3 "Atteinte aux valeurs de la République" : Bally Bagayoko justifie sur RTL pourquoi il est pour la pétition contre la proposition de loi Yadan
  • H3 Bally Bagayoko reconnaît sur RTL qu'Emmanuel Macron n'est "pas raciste" mais a trouvé sa réaction trop tardive
  • H3 Le maire LFI de Saint-Denis Bally Bagayoko remercie Emmanuel Macron pour son soutien face aux attaques racistes, bien que tardif
  • H3 Le Parlement entérine la loi de simplification de la vie économique et confirme la suppression des zones à faibles émissions
  • H3 À Saint-Denis, Emmanuel Macron va croiser Bally Bagayoko, qui avait dénoncé son silence sur les attaques racistes le visant
  • H4 Conso
  • H3 Pourquoi les fraises françaises coûtent plus cher mais sont plus savoureuses que les fraises espagnoles
  • H3 La Formule 1 fait sa révolution : règles, nouvelles voitures, fin du DRS... Ce qui change en 2026
  • H3 Asperges jusqu'à 20 euros le kilo : pourquoi ce légume reste parmi les plus chers du marché
  • H3 "Le secteur a licencié l'équivalent de la ville de Tours" : pourquoi l'industrie automobile a perdu un tiers de ses effectifs entre 2010 et 2023
  • H4 Sports
  • H3 "L’OM a besoin de stabilité" : sur RTL, Stéphane Richard, le nouveau président du club, dévoile sa feuille de route pour faire briller le club phocéen
  • H3 Quinté du jeudi 16 avril 2026 à Longchamp : les pronostics
  • H3 Rachat du Parc des Princes : le PSG "disposé à rouvrir des discussions" avec la mairie de Paris après l'élection d'Emmanuel Grégoire
  • H3 Liverpool-PSG : Ousmane Dembélé s'offre un doublé, les Parisiens qualifiés pour les demi-finales de la Ligue des champions
  • H3 Jean-Pierre Escalettes, président de la Fédération française de football de 2005 à 2010, est mort à l'âge de 90 ans
  • H3 Quinté du mercredi 15 avril 2026 à Cordemais (Loire-Atlantique) : les pronostics
  • H4 Culture
  • H3 "Le Seigneur des Anneaux" : le casting de "The Hunt for Gollum" dévoilé, avec un nouvel Aragorn
  • H3 Britney Spears de retour en cure de désintoxication après son arrestation le mois dernier
  • H3 "Je m'insurge !" : quand Laurent Ruquier et Guillaume Gomez débattent de la différence entre le lièvre et le lapin
  • H3 "Nous savons qu’il n’a peur de rien" : Tom Cruise "méconnaissable" dans le prochain film d'Iñárritu "Digger"
  • H3 "On n'est pas passé loin de ne plus l'avoir" : le Palais de la Découverte va rouvrir ses portes en 2027 après sept ans de fermeture
  • H3 Ticketmaster et sa maison mère Live Nation reconnus coupables de monopole illégal aux États-Unis, vers un possible démantèlement du géant des concerts
  • H4 International
  • H3 Le Royaume-Uni va faire son retour dans le programme Erasmus en 2027
  • H3 Patrick Bruel : la justice belge ouvre une enquête après une plainte pour agression sexuelle
  • H3 Turquie : au moins 9 morts et 13 blessés après des tirs dans une école primaire
  • H3 Les balades à dos d'éléphants, c'est fini : pourquoi l'Indonésie a totalement interdit cette activité
  • H3 Incendie de Crans-Montana : Jacques et Jessica Moretti mis en examen en Italie
  • H3 "L'affaire Pelicot du numérique" : une actrice allemande accuse son ex-mari d'avoir diffusé de fausses vidéos pornographiques
  • H4 Santé
  • H3 Jimmy Mohamed dénonce les "arnaques marketing" autour des yaourts Yop, Activia ou Actimel
  • H3 "L'intestin a des neurones, comme le cerveau" : Jimmy Mohamed explique pourquoi ce que vous mangez peut prévenir la maladie d'Alzheimer
  • H4 Un jour, une vie : les témoignages
  • H3 "Une cristallisation incroyable" : cette gemmologue dévoile la pierre précieuse la plus chère qu'elle ait eu entre les mains
  • H3 "Quelqu'un qui fait froid dans le dos ": victime d'une coach en développement personnel devenue gourou, elle témoigne
  • H3 "Je croyais que c'était provisoire" : après une opération des amygdales, elle se réveille avec l'accent anglais
  • H3 "Ma dernière mise en demeure s'élève à plus d'1 million d'euros" : À 21 ans, Sarah reçoit un héritage empoisonné par des dettes colossales
  • H5 Les applications skipped

Every page should have one H1 that describes the page content.

Why this matters

No H1 means screen-reader users can't identify the page's primary topic, and Google's content-extraction degrades.

Learn more

The H1 is the document title for assistive tech and a strong signal to search engines about page topic. Pages without one force screen readers to fall back to the <title> attribute or page chrome. Add a single H1 that names the page's primary subject.

Source: WCAG 2.4.6 / Google Search Central

Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.

Why this matters

Skipping heading levels breaks the document outline — screen-reader users lose track of section nesting.

Learn more

Screen reader users navigate by jumping between headings (H1 → H2 → H3). Skipping (H1 → H3) breaks the sense of hierarchy. Use sequential levels even if you don't like the default styling — restyle with CSS instead. WCAG 1.3.1 (Info and Relationships) treats this as an A failure.

Source: WCAG 2.1 SC 1.3.1 / W3C WAI

Skipping heading levels breaks the document outline. Screen readers may interpret missing levels as structural errors.

Why this matters

Skipping heading levels breaks the document outline — screen-reader users lose track of section nesting.

Learn more

Screen reader users navigate by jumping between headings (H1 → H2 → H3). Skipping (H1 → H3) breaks the sense of hierarchy. Use sequential levels even if you don't like the default styling — restyle with CSS instead. WCAG 1.3.1 (Info and Relationships) treats this as an A failure.

Source: WCAG 2.1 SC 1.3.1 / W3C WAI

D
Favicon & Branding
Action
7 icon(s) detected
FIX
7 icon(s) detected
Info::
favicon.ico present at site root
Info::
No apple-touch-icon detected
iOS devices use this when users add your site to their home screen. Add <link rel='apple-touch-icon' sizes='180x180' href='/apple-touch-icon.png'>.
Info::
Multiple icon sizes detected
favicon.ico Present
PNG Icons Missing
Apple Touch Missing
SVG Favicon Missing
Manifest Icons Present
Multiple Sizes Present
D
Web Manifest
Action
Valid manifest
FIX
Valid manifest
Info::
Name present: App
Info::
192x192 icon present
PWA Install Criteria Not Installable
Name App 192×192 icon 512×512 icon Start URL Display Mode
Name App Icons 6 icon(s)
D
Print Stylesheet
Action
No print styles
FIX
No print styles
Info::
No print-specific styles detected
When users print this page, they get the screen layout including navigation and non-essential elements. Add @media print rules to hide navigation and optimize layout for paper.
Print Stylesheet No Print Styles
Print stylesheet Not found Inline @media print Not detected
F
Navigation UX
Action
1 navigation pattern(s)
FIX
1 navigation pattern(s)
Info::
Search functionality detected
Got: role-search
Info::
13 navigation landmark(s) detected
Breadcrumbs
Search role='search' landmark
Skip Link
Labeled Navigation 13 <nav> element(s)
Back to Top
Hamburger Menu
Sticky Navigation Cannot reliably detect (CSS-based)
2 of 6 testable patterns navigation patterns detected. Limited navigation support. Consider adding breadcrumbs, search, and skip link.
D
Lighthouse Accessibility Audits
Action
Score 69/100 — 9 failing, 24 passed
FIX
69

Accessibility

These checks highlight opportunities to improve the accessibility of your web app. Automatic detection can only detect a subset of issues and does not guarantee the accessibility of your web app, so manual testing is also encouraged.

ARIA

Some ARIA parent roles must contain specific child roles to perform their intended accessibility functions. Learn more about roles and required children elements.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
header#main-header > nav.nav-container > div.col-auto > ul.list-unstyled header#main-header > nav.nav-container > div.col-auto > ul.list-unstyled

When a `progressbar` element doesn't have an accessible name, screen readers announce it with a generic name, making it unusable for users who rely on screen readers. Learn how to label `progressbar` elements.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
div.bg-white > div.row > div.progress > div.progress-bar div.bg-white > div.row > div.progress > div.progress-bar

These are opportunities to improve the usage of ARIA in your application which may enhance the experience for users of assistive technology, like a screen reader.

Names and labels

When a button doesn't have an accessible name, screen readers announce it as "button", making it unusable for users who rely on screen readers. Learn how to make buttons more accessible.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > button.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > button.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > button.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > button.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > button.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > button.at-class

Informative elements should aim for short, descriptive alternate text. Decorative elements can be ignored with an empty alt attribute. Learn more about the `alt` attribute.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
div.row > div.program-card-item > picture > img.program-card-bg div.row > div.program-card-item > picture > img.program-card-bg

Link text (and alternate text for images, when used as links) that is discernible, unique, and focusable improves the navigation experience for screen reader users. Learn how to make links accessible.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
div.row > ul.list-unstyled > li > a.btn div.row > ul.list-unstyled > li > a.btn
div.row > ul.list-unstyled > li > a.btn div.row > ul.list-unstyled > li > a.btn
div.row > ul.list-unstyled > li > a.btn div.row > ul.list-unstyled > li > a.btn
div.row > ul.list-unstyled > li > a.btn div.row > ul.list-unstyled > li > a.btn
div.row > ul.list-unstyled > li > a.btn div.row > ul.list-unstyled > li > a.btn
div.row > ul.list-unstyled > li > a.btn div.row > ul.list-unstyled > li > a.btn
div.col-auto > ul.list-unstyled > li.logo-container > a div.col-auto > ul.list-unstyled > li.logo-container > a
div.col-auto > ul.list-unstyled > li > a#login-button-nav div.col-auto > ul.list-unstyled > li > a#login-button-nav
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class div.webradio-card-slider > div.webradio-card-container > div.webradio-card-img > a.at-class
article.box-article > div.row > figure.col > a.at-class article.box-article > div.row > figure.col > a.at-class
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col > a.at-class article.box-article > div.row > figure.col > a.at-class
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col > a.at-class article.box-article > div.row > figure.col > a.at-class
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col > a.at-class article.box-article > div.row > figure.col > a.at-class
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col > a.at-class article.box-article > div.row > figure.col > a.at-class
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col > a.at-class article.box-article > div.row > figure.col > a.at-class
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
article.box-article > div.row > figure.col-12 > a.l-track article.box-article > div.row > figure.col-12 > a.l-track
div.container-fluid > div.row > div.col-12 > a.logo-svg-container div.container-fluid > div.row > div.col-12 > a.logo-svg-container
nav.misc-nav-container > ul.list-unstyled > li > a.btn nav.misc-nav-container > ul.list-unstyled > li > a.btn
nav.misc-nav-container > ul.list-unstyled > li > a.btn nav.misc-nav-container > ul.list-unstyled > li > a.btn
nav.misc-nav-container > ul.list-unstyled > li > a.btn nav.misc-nav-container > ul.list-unstyled > li > a.btn
nav.misc-nav-container > ul.list-unstyled > li > a.btn nav.misc-nav-container > ul.list-unstyled > li > a.btn
nav.misc-nav-container > ul.list-unstyled > li > a.btn nav.misc-nav-container > ul.list-unstyled > li > a.btn
nav.misc-nav-container > ul.list-unstyled > li > a.btn nav.misc-nav-container > ul.list-unstyled > li > a.btn

These are opportunities to improve the semantics of the controls in your application. This may enhance the experience for users of assistive technology, like a screen reader.

Navigation

Properly ordered headings that do not skip levels convey the semantic structure of the page, making it easier to navigate and understand when using assistive technologies. Learn more about heading order.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
Utilisation de la technologie , alimentée par votre opérateur télécom div.didomi-popup-notice-text > div > div#utiq_consent_text > h3
Guerre en Iran div.col-12 > div.row > div.col-12 > h4.rtl-fw-bold
Les applications div.row > div.col-10 > div.misc-nav-container > h5.text-white

These are opportunities to improve keyboard navigation in your application.

Tables and lists

Screen readers have a specific way of announcing lists. Ensuring proper list structure aids screen reader output. Learn more about proper list structure.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
En général : Pour une connexion foyer (ex : Wi-Fi), la personnalisation sera ba… div.didomi-popup-notice-text > div > div#utiq_consent_text > ul

Screen readers require list items (`<li>`) to be contained within a parent `<ul>`, `<ol>` or `<menu>` to be announced properly. Learn more about proper list structure.

Why this matters

Performance issues directly impact user engagement and conversion rates.

Failing Elements
nav.nav-container > div.col-auto > ul.list-unstyled > li.logo-container nav.nav-container > div.col-auto > ul.list-unstyled > li.logo-container

These are opportunities to improve the experience of reading tabular or list data using assistive technology, like a screen reader.

Best practices

Disabling zooming is problematic for users with low vision who rely on screen magnification to properly see the contents of a web page. Learn more about the viewport meta tag.

Why this matters

Informational: a Permissions-Policy directive showing feature -> allowed origins.

Source: MDN Permissions-Policy

Failing Elements
head > meta head > meta

These items highlight common accessibility best practices.

Interactive controls are keyboard focusable
Interactive elements indicate their purpose and state
The page has a logical tab order
Visual order on the page follows DOM order
User focus is not accidentally trapped in a region
The user's focus is directed to new content added to the page
HTML5 landmark elements are used to improve navigation
Offscreen content is hidden from assistive technology
Custom controls have associated labels
Custom controls have ARIA roles
`[aria-*]` attributes match their roles
`[aria-hidden="true"]` is not present on the document `<body>`
`[role]`s have all required `[aria-*]` attributes
`[role]` values are valid
`[aria-*]` attributes have valid values
`[aria-*]` attributes are valid and not misspelled
`button`, `link`, and `menuitem` elements have accessible names
ARIA attributes are used as specified for the element's role
Elements with `role="dialog"` or `role="alertdialog"` have accessible names.
`[aria-hidden="true"]` elements do not contain focusable descendents
Elements use only permitted ARIA attributes
Background and foreground colors have a sufficient contrast ratio
Document has a `<title>` element
`<html>` element has a `[lang]` attribute
`<html>` element has a valid value for its `[lang]` attribute
Links are distinguishable without relying on color.
No element has a `[tabindex]` value greater than 0
Touch targets have sufficient size and spacing.
`[lang]` attributes have a valid value
Document has a main landmark.
Deprecated ARIA roles were not used
Uses ARIA roles only on compatible elements
Identical links have the same purpose.
Elements with visible text labels have matching accessible names.
`[accesskey]` values are unique
ARIA input fields have accessible names
ARIA `meter` elements have accessible names
`[role]`s are contained by their required parent element
Elements with the `role=text` attribute do not have focusable descendents.
ARIA toggle fields have accessible names
ARIA `tooltip` elements have accessible names
ARIA `treeitem` elements have accessible names
The page contains a heading, skip link, or landmark region
`<dl>`'s contain only properly-ordered `<dt>` and `<dd>` groups, `<script>`, `<template>` or `<div>` elements.
Definition list items are wrapped in `<dl>` elements
ARIA IDs are unique
No form fields have multiple labels
`<frame>` or `<iframe>` elements have a title
`<html>` element has an `[xml:lang]` attribute with the same base language as the `[lang]` attribute.
Input buttons have discernible text.
`<input type="image">` elements have `[alt]` text
Form elements have associated labels
The document does not use `<meta http-equiv="refresh">`
`<object>` elements have alternate text
Select elements have associated label elements.
Skip links are focusable.
Cells in a `<table>` element that use the `[headers]` attribute refer to table cells within the same table.
`<th>` elements and elements with `[role="columnheader"/"rowheader"]` have data cells they describe.
`<video>` elements contain a `<track>` element with `[kind="captions"]`
Tables have different content in the summary attribute and `<caption>`.
All heading elements contain content.
Image elements do not have `[alt]` attributes that are redundant text.
Tables use `<caption>` instead of cells with the `[colspan]` attribute to indicate a caption.
`<td>` elements in a large `<table>` have one or more table headers.
B
Landmark Structure
109 landmarks
REVIEW
109 landmarks
Info::
<main> landmark present
Info::
13 <nav> landmark(s) found
Warning::
13 of 13 <nav> elements are unlabeled
Multiple navigations need aria-label to distinguish them for screen readers.
Warning::
Skip navigation link is missing (WCAG 2.4.1)
Add a skip link as the first focusable element so keyboard users can bypass repeated navigation.
Info::
Search landmark present
Page Structure — as a screen reader sees it
BANNER header NAV SEARCH MAIN ASIDE CONTENTINFO footer

Multiple navigations need aria-label to distinguish them for screen readers.

Why this matters

Some <nav> elements lack aria-label — screen-reader users hear 'navigation' multiple times with no way to distinguish them.

Learn more

When a page has multiple <nav> regions (primary, footer, breadcrumb), each needs aria-label or aria-labelledby. AT users navigate by landmark; identical 'navigation' announcements force them to enter each one to discover purpose.

Source: WAI-ARIA Authoring Practices

Add a skip link as the first focusable element so keyboard users can bypass repeated navigation.

Why this matters

Without a skip-nav link, keyboard users tab through every nav item before reaching content — every page, every visit.

Learn more

WCAG 2.4.1 (Bypass Blocks) requires a mechanism to skip past repeated content. The standard implementation is a 'Skip to main content' link that's the first focusable element, visually hidden until focused. Three lines of HTML + four of CSS.

Source: WCAG 2.1 SC 2.4.1

B
Alt Text Quality
1 of 87 images have issues
REVIEW
1 of 87 images have issues
Critical::
1 image(s) missing alt attribute
Images without alt text are invisible to screen readers.
Critical::
1 image-in-link without alt text
An image inside a link with no alt creates an empty link.
Info::
86 decorative image(s) correctly marked
87 images 86 decorative 1 missing
IssueCount
missing1 image(s)

Images without alt text are invisible to screen readers.

Why this matters

Each image without alt text is a WCAG 1.1.1 failure — invisible to screen-reader users, lost from Google Image Search.

Learn more

WCAG 2.1 Level A requires text alternatives for non-decorative images. Empty alt='' is fine for decorative; meaningful images need descriptive text. Common fixes: CMS audit + bulk add, build-time linter (alt-text-required ESLint rule), CI gate on Lighthouse a11y score.

Source: WCAG 2.1 SC 1.1.1 / WebAIM Million Report

An image inside a link with no alt creates an empty link.

Why this matters

Image-only links with no alt create empty links — screen-reader users hear 'link' with no destination context.

Learn more

An <a><img></a> with no img alt is the worst-case for accessibility: AT announces the link but can't describe where it goes. Either add alt to the image OR add aria-label to the link.

Source: WCAG 2.1 SC 2.4.4

C
404 Error Page
Action
HTTP 404, custom page
REVIEW
HTTP 404, custom page
Info::
Correct 404 status code returned
Got: HTTP 404
Info::
Custom styled 404 page
404 Page Quality Custom 404 Page
Status Code HTTP 404 Page Title Page introuvable Custom Styling Navigation Homepage Link Search Form
B
Dark Mode Support
Dark mode detected
REVIEW
Dark mode detected
Info::
color-scheme meta tag present
The site declares support for light and dark color schemes via <meta name='color-scheme'>.
Got: light dark
Info::
Detection limited to meta tags and inline styles
External CSS files may contain prefers-color-scheme rules not visible to this scan.
Dark Mode Dark Mode Supported
color-scheme meta light dark Dark theme-color Not set CSS indicators Not detected

Detection limited to meta tags and inline styles.

B
Color Contrast (Screenshot)
20 text elements analyzed, 0 fail WCAG AA
REVIEW

Analyzes text contrast against the actual rendered page, including background images, gradients, and overlays that CSS-based tools cannot detect.

20 pass 20 pass AA only
Show all checked elements (20)
ElementRatioRequiredFGBGResult
h2 Le grand récit4.28:13.0:1
#000000
#E3001B
Pass
h2 L'heure du Crime4.28:13.0:1
#000000
#E3001B
Pass
h2 Les Grosses Têtes4.28:13.0:1
#000000
#E3001B
Pass
h2 RTL Petit Matin4.28:13.0:1
#000000
#E3001B
Pass
h2 RTL Matin4.28:13.0:1
#000000
#E3001B
Pass
h2 Un jour, une vie4.28:13.0:1
#000000
#E3001B
Pass
h2 Voir4.28:13.0:1
#000000
#E3001B
Pass
h2 la grille des progra…4.28:13.0:1
#000000
#E3001B
Pass
h2 Flash actu4.28:13.0:1
#000000
#E3001B
Pass
h3 Tchernobyl, bombe à…4.28:13.0:1
#000000
#E3001B
Pass
h3 Les secrets de Donal…4.28:13.0:1
#000000
#E3001B
Pass
h3 RTL Radio Céline4.28:13.0:1
#000000
#E3001B
Pass
h3 L'épopée verte4.28:13.0:1
#000000
#E3001B
Pass
h3 Iran, histoire d'une…4.28:13.0:1
#000000
#E3001B
Pass
h3 Le fantôme de Jeffr…4.28:13.0:1
#000000
#E3001B
Pass
h3 Richard / Hondelatte…4.28:13.0:1
#000000
#E3001B
Pass
h3 Le choix info RTL4.28:13.0:1
#000000
#E3001B
Pass
h3 Des idées pour vivr…4.28:13.0:1
#000000
#E3001B
Pass
h3 La maladie chez les …4.28:13.0:1
#000000
#E3001B
Pass
h3 Face à Fogiel4.28:13.0:1
#000000
#E3001B
Pass

Methodology: The top 20 text elements by font size were checked. Background color was sampled from the desktop screenshot using a 5-point pattern. WCAG 2.1 AA requires 4.5:1 for normal text and 3:1 for large text.

A
Form Accessibility
1 of 1 controls have issues
PASS
1 of 1 controls have issues
Critical::
1 control(s) without accessible label
Form controls need a <label>, aria-label, or aria-labelledby for screen readers.
Got: <input type="checkbox" name="toggle-field" id="lg-dark-nl-rtl-informations">
1 controls
0 labeled
0 placeholder only
1 unlabeled
ControlTypeLabelMethod
#lg-dark-nl-rtl-informationscheckbox(none)none

Form controls need a <label>, aria-label, or aria-labelledby for screen readers.

<input type="checkbox" name="toggle-field" id="lg-dark-nl-rtl-informations">

Why this matters

Form controls without labels — assistive tech announces 'edit text' with no context; users can't complete forms.

Source: WCAG 2.1 SC 3.3.2

All checks on this page are automated. Results are estimates - run targeted manual reviews when the score affects a release decision.

Send Feedback