5G Netz (4 issues)
Visual presentation of elements does not match code markup
+
Heading "eyebrow" not marked up correctly as part of (or following) heading
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Aktionen (5 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Heading structure not appropriate
+
Improper use of semantic HTML list elements
+
Visually conveyed heading structure not programmatically determinable
+
Alle Geräte (6 issues)
No proper semantic HTML used
+
Visual presentation of elements does not match code markup
+
Sidebar Content not matching visual presentation and code markup
+
Device list presentation does not match markup
+
Improper use of semantic HTML list elements
+
List of services "rund um Ihre Bestellung" is not using correct semantic HTML
+
Android Betriebssystem (4 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Apple (2 issues)
Visual presentation of elements does not match code markup
+
Headings do not use semantic HTML elements
+
Apple Watch Familienkonfiguration (3 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Apple iPad Air 11 2025 (11 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Improper use of semantic HTML list elements
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Cashback Einlösen (2 issues)
Visual presentation of heading structure does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Daten Tarife (2 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Flex Tarife Weitere Informationen (3 issues)
Visual presentation of elements does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Visual presentation of heading structure does not match code markup
+
For Friends (4 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
For Friends Aktionscode (3 issues)
Visual presentation of elements does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Heading structure not accessible
+
Handy Verkaufen (4 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Handyversicherung (2 issues)
Semantic HTML elements are used for styling or layout purposes
+
Visual presentation of heading structure does not match code markup
+
IoT-Verteilerseite (3 issues)
Visual presentation of elements does not match code markup
+
Visually presented heading structure does not match semantically determinable heading structure
+
Semantic HTML elements are used for styling or layout purposes
+
Kider Uhr GPS Oneshop (5 issues)
Visual presentation of elements does not match code markup
+
Visually presented heading structure does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Improper use of semantic HTML list elements
+
Text content not always accessible to assistive technology
+
Kids-Watch (6 issues)
Visual presentation of elements does not match code markup
+
Visually presented heading structure does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Improper use of semantic HTML list elements
+
Last table row with "Jetzt bestellen" button has no row heading
+
Visual presentation of elements does not match code markup
+
Magena Sport (5 issues)
Visual presentation of elements does not match code markup
+
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Visual presentation of heading structure does not match code markup
+
Line break element <br> used for layout purposes
+
Magenta TV Streaming Dienste Partner DAZN (7 issues)
Visual presentation of elements does not match code markup
+
Line break elements used
+
No main landmark found
+
Semantic HTML elements are used for styling or layout purposes
+
Semantic lists are used for non-list content
+
Link element used for non-link content
+
List of leagues (Bundesliga, etc.) not marked up as list
+
Magenta TV Streaming Dienste Partner wow (4 issues)
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Radio button group in "Jetzt buchen" dialog window not semantically correct
+
<b> tag used to create bold text
+
Magenta Tarife Young (5 issues)
Heading structure
+
Visual presentation of elements does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Decorative text content is announced to assistive technology
+
List marker count announced twice
+
Mobile Router (8 issues)
No proper semantic HTML used
+
Visual presentation of elements does not match code markup
+
Sidebar Content not matching visual presentation and code markup
+
Device list presentation does not match markup
+
Improper use of semantic HTML list elements
+
Device category navigation not using navigation landmark
+
List of services "rund um Ihre Bestellung" is not using correct semantic HTML
+
Empty paragraph element found
+
Mobilfunk Netzausbau (4 issues)
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Heading uses emphasis
+
Semantic HTML elements are used for styling or layout purposes
+
Prepaid Tarife (4 issues)
Visual presentation of elements does not match code markup
+
Headings not identifiable
+
On-page navigation (Direkteinsprünge) uses headings instead of navigation
+
Semantic HTML elements are used for styling or layout purposes
+
Roaming Optionen (6 issues)
Text content visually emphasized without semantic HTML elements
+
Visual presentation of elements does not match code markup
+
Partnernetze table is not using semantic HTML table element
+
List is not using semantic HTML elements
+
Line break element <br> used
+
Comparison table does not have appropriate heading
+
Senioren Smartwatch (9 issues)
Visual presentation of heading structure does not match code markup
+
Data table does not use table element
+
Visual presentation of elements does not match code markup
+
Visual presentation of elements does not match code markup
+
Content displayed as heading is not using semantic HTML heading element
+
Improper use of semantic HTML list elements
+
List content not using HTML list element
+
Semantic HTML elements are used for styling or layout purposes
+
Ordered list used for non-ordered list content
+
Shop (2 issues)
Semantic HTML elements are used for styling or layout purposes
+
Inconsistent use of semantic HTML list elements
+
Smartphone Tarife (6 issues)
"Ich bin unter 28 Jahre alt" toggle switch / link
+
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Regions used to structure content, already structured by headings
+
Semantic HTML elements are used for styling or layout purposes
+
Smartphones (6 issues)
Visual presentation of elements does not match code markup
+
Sidebar Content not matching visual presentation and code markup
+
Device list presentation does not match markup
+
Device category navigation not using navigation landmark
+
Empty paragraph element found
+
List of services "rund um Ihre Bestellung" is not using correct semantic HTML
+
Smartwatch mit Gesundheitsfunktionen (5 issues)
Visual presentation of elements does not match code markup
+
Visual presentation of elements does not match code markup
+
Visually presented heading structure does not match code markup
+
List content not using HTML list element
+
Semantic HTML elements are used for styling or layout purposes
+
Smartwatches (7 issues)
Visual presentation of elements does not match code markup
+
Headings do not use semantic HTML elements
+
Sidebar Content not matching visual presentation and code markup
+
Device list presentation does not match markup
+
Device category navigation not using navigation landmark
+
Empty paragraph element found
+
List of services "rund um Ihre Bestellung" is not using correct semantic HTML
+
Sonim XP100 (4 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Sport (5 issues)
Headings do not use semantic HTML heading elements
+
Visual presentation of elements does not match code markup
+
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Sport Megasport Option (4 issues)
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Heading element used for non-heading content
+
Main heading hidden and replaced by images
+
Tablets (7 issues)
Visual presentation of elements does not match code markup
+
Sidebar Content not matching visual presentation and code markup
+
Sidebar Content not matching visual presentation and code markup
+
Device list presentation does not match markup
+
Device category navigation not using navigation landmark
+
Empty paragraph element found
+
List of services "rund um Ihre Bestellung" is not using correct semantic HTML
+
Tarife (3 issues)
Visual presentation of elements does not match code markup
+
Heading's visual presentation does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Tastenhandys (6 issues)
Visual presentation of elements does not match code markup
+
Sidebar Content not matching visual presentation and code markup
+
Device list presentation does not match markup
+
Device category navigation not using navigation landmark
+
Empty paragraph element found
+
List of services "rund um Ihre Bestellung" is not using correct semantic HTML
+
Telefonieren SMS Ins Ausland (2 issues)
Visual presentation of elements does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Travel Mobil Optionen (3 issues)
Visual presentation of elements does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Semantic HTML elements are used for styling or layout purposes
+
Travel Surf (3 issues)
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
VIP Lieferung (1 issues)
Visual presentation of heading structure does not match code markup
+
Vertragsverlängerung (2 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Xiaomi 15 (3 issues)
Improper use of semantic HTML list elements
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
iPad Vergleich (4 issues)
Visual presentation of heading structure does not match code markup
+
Tabular content does not use HTML table element
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
iPhone Erleben (4 issues)
Visual presentation of heading structure does not match code markup
+
Visual presentation of heading structure does not match code markup
+
Improper use of semantic HTML list elements
+
Improper use of semantic HTML list elements
+
iPhone Vergleich (4 issues)
Visual presentation of heading structure does not match code markup
+
Tabular content does not use HTML table element
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Accompanying Files
Observation Details
The heading "Weltweit online ohne Risiko:" introduces the content below itself including the comparison table for "Pässe & Optionen". This relationship between heading and content is not matching.
Remediation Notes
Use appropriate heading for the comparison table, like "Datenpässe und Optionen".
To have a meaningful page structure, you should look at the heading outline and evaluate its usefulness. See attached screenshot of the outline.
Accompanying Files
Observation Details
The list "So aktivieren Sie Datenroaming im Ausland" is not using the semantic HTML elements for ordered lists (<ol> & <li>). Issues arise:
User cannot know the number of list items (steps)
Numbers are shown and announced by assistive technology as text
Remediation Notes
Use a <ol> & <li> structure to match the visual presentation.
Accompanying Files
Observation Details
There is visually emphasized content (bold & italic) throughout the website, using <i> & <b>. Those elements should not be used to emphasize text content as they do not programmatically communicate the emphasis.
Remediation Notes
Use semantic HTML elements <strong> and <em> instead.
Accompanying Files
Observation Details
HTML element <br> is used inside a paragraph. Line break elements are announced by screen readers as "empty group". Line break elements must not be used for structure or layout purposes.
Remediation Notes
For structuring, always use actual paragraph elements (
<p>).For styling, always use CSS.
Only use line break element for specific purposes (e.g. in poetry).
Accompanying Files
Observation Details
The results table of the Partnernetze input element is this played as a table. It however, does not use the semantic HTML table element (<table>). The mismatch of visually displayed information and programmatically accessible structure results in the failure of this success criterion.
Not using the table element for tabular data also makes it hard for screen reader uses to navigate the results.
Remediation Notes
If displaying data in tabular form, always use the appropriate semantic HTML element <table>.
Accompanying Files
Observation Details
Headings "MagentaMobil Prepaid Tarife" (<h1>) and "Rufnummer vom Wettbewerber mitnehmen und 10 € Wechselbonus sichern.*" (<h2>) are not visually identifiable as headings.
Instead, non-heading text content (<p>) is used as the actual visual heading.
Beware, heading structure / outline of a page is very much the most used method for screen reader users to navigate web pages. See WebAIM Web Accessibility Survey, making a good outline the absolute basis of delivering an accessible web page.
Remediation Notes
Only use heading elements (<h1>, ...) for text content that is also displayed and used as a heading. Always use heading elements for such content.
If it looks like a heading, make it a heading. If it does not look like a heading, do not make it a heading.
Tip for Content Management: Start by looking at the page content without any styling. Ensure a fitting heading structure / outline and also ensure that all content is appropriately introduced by its heading.
Observation Details
Multiple
<h1>foundEmpty
<h1>foundAll content is below
<h2>, rendering the<h1>useless
Remediation Notes
Ensure there is only a single <h1> present and remove empty headings completely.
When there is only one <h1>, one <h2>, and all content of the page is nested into said <h2>, the extra heading level is unnecessary. Evaluate, removing the unnecessary heading level and placing the content below the main heading.
Accompanying Files
Observation Details
Visually, we find a heading structure in the upper page area as follows:
1 UNLIMITED
2 Die neuen Samsung Galaxy HighlightsIn code, we find the following heading structure:
1 Aktuelle Angebote & Aktionen
2 Die neuen Samsung Galaxy HighlightsContent that is visually displayed as the main heading is no heading at all, and the main heading is significantly less visually prominent than the heading level 2.
Remediation Notes
Match visual display and code structure, styling headings accordingly or changing the heading structure / outline to match the desired display.
Observation Details
Heading structure is as follows:
1 Aktuelle Angebote & Aktionen
2 Die neuen Samsung Galaxy Highlights
2 YoungAngebot
3 MeinMagenta App
3 Magenta Moments
3 Handyversicherung
2 Entdecken Sie unsere Telekom-AktionenNesting <h3> headings under "YoungAngebot" heading does not appropriately introduce the following contents.
Remediation Notes
Ensuring a fitting heading structure / outline is key to a baseline accessible website/page. Looking at the contents, using heading levels to group / nest, makes navigation through the page easy.
A possible structure could be, dividing the content into "new" or "limited" and "evergreen" offers.
1 Angebote & Aktionen
2 <-- "Aktuelles"
3 Die neuen Samsung Galaxy Highlights
3 YoungAngebot
2 <-- "Dauerbrenner"
3 MeinMagenta App
3 Magenta Moments
3 Handyversicherung
3 Entdecken Sie unsere Telekom-AktionenEnsure, using the right heading levels and also displaying the headings appropriately (<h1> being the main heading, etc.)
Accompanying Files
Observation Details
The on-page navigation carousel
uses headings. Those are the same headings as the actual sections on the page. Duplicating headings will inevitably create accessibility issues.
is nested under "Rufnummer vom Wettbewerber mitnehmen und 10 € Wechselbonus sichern.*" heading
Remediation Notes
As a navigational element, the on-page navigation should use a <nav> element. Inside, it should use a list structure as well instead of headings to de-duplicate heading names.
Observation Details
The complete heading structure is hidden inside a collapsible, not at all representing the visually displayed outline.
Not a single heading is using semantic HTML heading elements and all semantic HTML heading elements are used on non-heading text.
Keep in mind, this "trick" might have worked in SEO years ago, but will de-rank the page in search engines. Accessibility will always be good for SEO.
Remediation Notes
The visually displayed heading structure MUST be represented by the programmatically determinable heading structure.
Accompanying Files
Observation Details
Headings do not use semantic HTML elements (<h1>, <h2>, <h3>, ...). They are visually displayed within images.
Remediation Notes
All headings must use semantic HTML elements (<h1>, <h2>, <h3>, ...). Ensure, adding text alternative to the images to convey displayed heading structure in text as well.
Accompanying Files
Observation Details
The device list presentation suggests the code to be marked up like this:
<!-- Device list -->
<div>
<!-- Device card -->
<article>
<span><!-- Badge --></span>
<img /><!-- Device image -->
<h2><!-- Device name --></h2>
<p><!-- Storage --></p>
<p><!-- Price info --></p>
<p><!-- Price --></p>
</article>
<!-- More device cards -->
</div>Instead, there are no headings, sections, articles, divs and spans are nested many hierarchy levels and an empty link is present.
Remediation Notes
Ensure, code markup matches the visual presentation. One possible solution could be a structure as follows:
<h2></h2> <!-- Heading to introduce device list -->
<!-- Device list -->
<ul>
<li>
<!-- Device card -->
<article>
<h3></h3> <!-- Device name -->
<span></span> <!-- Badge with promotion/info -->
<dl>
<div>
<dt class="visually-hidden">Verfügbar in den Farben</dt>
<dd>
<ul></ul> <!-- Available colors -->
</dd>
</div>
<div>
<dt class="visually-hidden">Speicherplatz</dt>
<dd>
Verfügbar in
<ul></ul> <!-- Storage options -->
</dd>
</div>
<div>
<dt>Preis, einmalig</dt>
<dd></dd> <!-- Price -->
</div>
</dl>
<img /><!-- Device image -->
</article>
</li>
<!-- More device cards -->
</ul>Improvements made and notes to implement:
Clear structure without unnecessary nesting, without sections/articles nested, etc.
Use actual semantic list (
<ul>) for the listEach product is an
<article>so it can be navigated to easily via screen readerProduct is defined by semantic heading
<h3>as first child of product card<span>with badge positioned right after heading, so it will be announced after the device name; badge can be positioned absolute or visually be moved up by using CSSorder: -1Product description is moved into description list to make each description detail easily navigable
Lists within the description (color list, storage option list) are using semantic list elements
Some
<dt>can use aclass="visually-hidden"to be accessible to screen readers while not being visible; check example class below
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Added side-effect of a semantic structure like this is the improved simplicity to build a responsive layout for the list, using CSS grid and Flexbox.
Accompanying Files
Observation Details
The sidebar section "Vorteile im Überblick" uses visual presentation (and CSS classes) of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content.
<h2>Vorteile im Überblick</h2>
<h3>Unbegrenztes Datenvolumen</h3>
<p>...</p>
<p><a href="...">...</a></p>
<h3>MagentaEINS Vorteil</h3>
<p>...</p>
<p><a href="...">...</a></p>Observation Details
This observation is a general remark on semantic HTML, as there are numerous issues with improper use (or complete lack of use) of semantic HTML. Listing these issues in single observations would make that list unusable. At this stage, an accessibility auditor would usually stop the auditing and wait for general improvements from development to go ahead.
I will not list every issue in here. I will list –in no particular order– issues with semantic HTML in the remediation notes.
Remediation Notes
Semantic HTML
Ensure, using proper semantic HTML. This means,
If there is an HTML element with needed or wanted functionality, use it.
If a link is needed, use
<a>, if a button is needed, use<button>– also, using links and buttons as intended (links to move to content and buttons to do an action) will help navigation immensely, as e.g. screen readers can return lists of buttons/links independently. So knowing what elements will keep you on the page (footnote buttons) and what elements will bring you somewhere (product detail page) is simply made possible by using the correct element.If creating user interface components with input controls like checkboxes, radio buttons, etc., use the appropriate, native semantic HTML elements for them. Use
<input type="">,<select>,<button>, ... to ensure accessibility.If writing headings, use the proper semantic HTML headings (
<h1>,<h2>,<h3>,<h4>)If you are listing elements (color variants, storage options, products, ...), use semantic list elements (
<ul>for lists, where the order is not relevant,<ol>for lists, where the order is relevant,<dl>for key-value-paired descriptions)
Visual presentation MUST match code markup. If it looks like a heading, semantic HTML heading elements MUST be used. If it does not look like a heading, semantic HTML heading elements MUST NOT be used. Same goes for every other native HTML element.
Grouping elements/objects/content for layout or styling purposes must only be done, using generic HTML elements.
There are only 2 generic HTML elements named in MDN docs – ARIA: generic role. No other element shall be used for this purpose. Those are
<div>,<span>,Additionally, the
<section>element has the generic role, too. The section however comes with a very crucial limitation, as it "should always have a heading, with very few exceptions".
Best practice HTML nesting
Ensure, using as little nesting as possible. Every single level of nesting inside HTML code will impact website performance. Using a 10-level-hierarchy to create a button with <div>s etc., is completely unnecessary, as a <button>Button text</button> will result in accessible, robust, portable solution and will always outperform.
Outline / Heading structure
Ensure use of heading structure for a page's content. Headings are the most used method to navigate the broad structure of a website for users of screen readers. A clear heading structure will also increase SEO performance. The shop page "Alle Geräte mit Vertrag" (/shop/geraete/alle-geraete) only uses a single main heading and no more. A good structure could be:
<main>
1 Alle Geräte mit Vertrag
2 Filter und Sortierung
2 Geräteliste
3 GERÄTENAME
3 ...
<aside>
2 Auswahl ("Warenkorb")
3 Tarif
3 Gerät
2 Vorteile im Überblick
3 Unbegrenztes Datenvolumen
3 MagentaEINS VorteilAccompanying Files
Observation Details
The sidebar section "Ich möchte" uses visual presentation of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content. How the heading is worded, potentially the most fitting element structure would be a a heading level 2 and an unordered list.
<h2>Ich möchte...</h2>
<ul><li>...Observation Details
The section "Verlässlicher Service rund um Ihre Bestellung" arguably houses a list of services but is not using semantic HTML list elements. While this is not a strict failure of this success criterion, remediation is recommended.
Observation Details
The section "Verlässlicher Service rund um Ihre Bestellung" arguably houses a list of services but is not using semantic HTML list elements. While this is not a strict failure of this success criterion, remediation is recommended.
Accompanying Files
Observation Details
The FAQ section houses at least one empty <p> element (class names for reachability: sc-feUZmu ibaGoG).
Paragraphs have an ARIA role paragraph always making them be announced by screen readers. Empty paragraph elements lead to the announcement of "empty group".
Paragraph elements must never be empty.
Remediation Notes
Ideally, creation of empty paragraph elements will technically be prohibited.
Content management however must ensure, not creating empty paragraph elements, not in rich text nor source code editor.
Side note: while this issue is about the found empty paragraph element, there are rare occasions, any element should be empty.
Accompanying Files
Observation Details
The navigational items in the device category list above the page's main heading are not using semantic HTML navigation element <nav>.
Remediation Notes
Use proper semantic HTML structure to create navigation landmark. Ensure, labelling the <nav> element to differentiate from main, breadcrumb and other menu(s).
Accompanying Files
Observation Details
Headings do not use semantic HTML elements (<h1>, <h2>).
Remediation Notes
All headings must use semantic HTML elements (<h1>, <h2>, <h3>, ...). Ensure, adding text alternative to the images to convey displayed heading structure in text as well.
Please (also) refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Accompanying Files
Observation Details
Visually presented, we can identify the following heading structure:
1 Alles rund um die Telekom Tarife
2 MagentaMobil
2 MagentaZuhause
2 MagentaTV
2 MagentaEINS
2 MagentaMobil Prepaid
2 Young Tarife
2 Glasfaser-Tarife
2 MagentaMobil Data
2 Zusatzkarten
2 Häufig gestellte Fragen zu unseren Telekom Tarifen
3 Telekom Tarife
4 Was ist der billigste Tarif der Telekom?
4 Welche Telekom Tarife sind am beliebtesten?
4 Welcher Telekom Vertrag ist der beste?
4 Was ist das Besondere bei Telekom Tarifen?The code markup however shows the actual heading structure to be:
1 Telekom Tarife
2 Alles rund um die Telekom Tarife
3 MagentaMobil
4 Mit den Telekom Tarifen ...
3 MagentaZuhause
4 Bequem zu Hause im Festnetz ...
3 MagentaTV
4 Erleben Sie Entertainment zu Hause und unterwegs ...
3 MagentaEINS
4 Kombinieren Sie ganz einfach Ihre Telekom Tarife ...
3 MagentaMobil Prepaid
4 Sie möchten unbeschwert telefonieren und surfen, ...
3 Young Tarife
4 Mit den Telekom Tarifen für junge Leute ...
3 Glasfaser-Tarife
4 Mit den Telekom Tarifen für Glasfaser ...
3 MagentaMobil Data
4 Wenn Sie Tablet oder Laptop ...
3 Zusatzkarten
4 Haben Sie bereits einen Telekom Tarif ...
2 Häufig gestellte Fragen zu unseren Telekom Tarifen
3 Was ist der billigste Tarif der Telekom?
3 Welche Telekom Tarife sind am beliebtesten?
3 Welcher Telekom Vertrag ist der beste?
3 Was ist das Besondere bei Telekom Tarifen?Remediation Notes
Ensure, visual presentation matches the code markup and proper heading nesting is done.
Short: only what is an actual heading (using semantic HTML element) should be visually presented as such. And everything that is visually presented as a heading must be an actual heading.
Approach to better heading structure / outline, grouping the tariff group cards under a new <h2> heading.
p Telekom Tarife
1 Alles rund um die Telekom Tarife
2 Alle Tarifgruppen im Überblick
3 MagentaMobil
p Mit den Telekom Tarifen ...
3 MagentaZuhause
p Bequem zu Hause im Festnetz ...
3 MagentaTV
p Erleben Sie Entertainment zu Hause und unterwegs ...
3 MagentaEINS
p Kombinieren Sie ganz einfach Ihre Telekom Tarife ...
3 MagentaMobil Prepaid
p Sie möchten unbeschwert telefonieren und surfen, ...
3 Young Tarife
p Mit den Telekom Tarifen für junge Leute ...
3 Glasfaser-Tarife
p Mit den Telekom Tarifen für Glasfaser ...
3 MagentaMobil Data
p Wenn Sie Tablet oder Laptop ...
3 Zusatzkarten
p Haben Sie bereits einen Telekom Tarif ...
2 Häufig gestellte Fragen zu unseren Telekom Tarifen
p Telekom Tarife
3 Was ist der billigste Tarif der Telekom?
3 Welche Telekom Tarife sind am beliebtesten?
3 Welcher Telekom Vertrag ist der beste?
3 Was ist das Besondere bei Telekom Tarifen?Please (also) refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
When remediating, please also refer to observation "Content card link purpose not determinable" (2.4.4 Link Purpose (In Context)), where remediation recommends the use of proper card structure, as those work in tandem.
Accompanying Files
Observation Details
The toggle switch "Ich bin unter 28 Jahre alt" does not use semantic HTML elements for a toggle switch. The switch functions as a link. The markup does not reflect this.
Presented as toggle switch
Functions like a link
Marked up without any interactive elements
Code for the link is:
<span class="co-ab_outerWrapper co-ab_outerWrapper--desktop">
<span class="co-ab_ageToggleWrapper">
<div class="co-ab_ageToggle_textWrapper">
Ich bin unter 28 Jahre alt
<div> </div>
</div>
<span class="co-ab_ageToggle_switchWrapper">
<span class="co-ab_ageToggle_switchStyle"></span>
</span>
</span>
</span>Remediation Notes
Ensure, using proper semantic HTML elements. Please refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
The link "Ich bin unter 28 Jahre alt" can be marked up like this:
<a href="...">Ich bin unter 28 Jahre alt</a>Which makes it perfectly accessible, behave exactly like it should and still all styling can be done on it as intended.
You must not mismatch presentation, function, and markup. A link looks like a link, a toggle switch like a toggle switch.
Observation Details
League logos are presented as list of leagues but not marked up as such.
Remediation Notes
Listing items, semantic HTML list elements should be used.
Please refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Observation Details
Semantic HTML list elements must only be used for actual list content. Lists are used in various places as
class="container-grid--list"class="ButtonGroup__items..."class="flickity-page-dots"
All those do not have list content and as such must not use list elements.
Lists are used to structure page content. They are an effective method of navigating a page, skipping certain parts, etc. Mis-using list elements for non-list content will make it harder for certain user groups to navigate a page.
Remediation Notes
Ensure, no non-list content is using semantic list elements. For layout and styling purposes, always use CSS. Use semantic list elements only for actual list content.
Please (also) refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Observation Details
Line break elements <br> must not be used for styling or layout purposes.
<p class="Price__text___2M42_">ab dem 13. Monat 44,99 € mtl. <br></p>Accompanying Files
Observation Details
"Alle Paketdetails anzeigen" opens a dialog window. Actions should be initiated by buttons, not by links. Use links only for link content.
Remediation Notes
Only use links for link content. For action initiation like opening a dialog window, use the semantic <button> element.
Please (also) refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Observation Details
No main landmark found as child of body element. Use landmarks to help users navigate the broad structure of the page.
Remediation Notes
Ensure all content is contained in landmarks. Use <main> to group the main content of the page so that a user can quickly navigate to it. User other landmarks where appropriate (search, navigation, banner, complementary, ...).
Accompanying Files
Observation Details
Markup uses heading, then a fieldset with legend, and two labels for the two options. While necessary labels are accessible (2.4.6 Headings and Labels) there is a lot of markup that makes it very complex. The current markup, using a screen reader, leads to four announcements of text "Hast du einen Telekom Festnetz- & Internetanschluss?".
Remediation Notes
By moving the headline into the fieldset's <legend>, the announcement count can be limited and text content can be de-duplicated. See e.g. GOV.UK Design System – Radios for an example approach to do this.
Accompanying Files
Observation Details
The non-semantic HTML element <b> is used to bolden text content. Emphasizing text content should only be done by using semantic HTML elements like <strong> and <em>, as those can be read and communicated by assistive technology.
Accompanying Files
Observation Details
The "overline" / "eyebrow" element above content headings (see attached screenshot) are not part of the heading's markup nor are they following the heading in the DOM order. As such they logically / hierarchically are part of the previous heading in the outline.
While presentation suggests the outline:
h1 Deutschlands größtes und bestes 5G-Netz
...
h2 Mehr Speed – Boostet Sie ins nächste Level
...The markup programmatically determines the eyebrow to be part of the previous heading and the outline to be:
h1 Deutschlands größtes und bestes 5G-Netz
...
Mehr Speed
h2 Boostet Sie ins nächste Level
...Remediation Notes
Headings should be the first elements within sections as they describe all following content in said section. Ensure correct content structure by outlining all sections, headings and content.
Besides a correct content structure, immediate remediation for this issue can be done in the following ways:
Create one heading out of eyebrow and heading, using
<h2>Mehr Speed – Boostet Sie ins nächste Level</h2>Move eyebrow below heading in DOM order (
<h2>Boostet Sie ins nächste Level</h2><p>Mehr Speed</p>) and visually display as eyebrow by using CSSorder: -1on the eyebrow
Accompanying Files
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list". E.g. stage section with main heading.On the other hand, what is arguably list content in the "Tarife" carousel (Handyverträge, Datentarife, ...), is not using semantic list elements.
Also, while the section "Warum Mobilfunk von der Telekom? Ganz einfach!" again uses a list element for non-list content, the actual lists inside the section (checkmark lists) are built with HTML paragraphs.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Ensure, to refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list". E.g. stage section with main heading.On the other hand, what is arguably list content in the "Die Sportoptionen im Überblick" section, is not using semantic list elements.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Ensure, to refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Observation Details
Content, used as headings, is not using semantic HTML heading elements. Content that does use semantic HTML heading elements then is not used as headings. This mismatch renders the page completely inaccessible and unusable for certain people.
The perceived visual heading structure of the page is:
h1 Live-Sport bei Magenta TV
h2 Welchen Sport wollen Sie live bei MagentaTV sehen?
h2 Die Sportoptionen im Überblick
h3 MegaSport 12M Option
h3 WOW Live-Sport by Telekom 12M Option
h3 DAZN by Telekom Option
h3 MagentaSport
h2 Mehr EM ging nicht!
h2 Das Telekom Sport-Angebot: Fußball, Eishockey & mehr
h2 Häufig gestellte Fragen rund um Sport bei MagentaTV
h3 Was beinhalten die Telekom Sport-Angebote auf MagentaTV?
h3 Wie funktioniert Sport bei der Telekom?
h3 Wie kann ich die Sport-Inhalte der Telekom empfangen?
h3 Muss ich Telekom Kunde sein?
h3 Was ist der Telekom Login?The code structure however removes all essential functionality of the page, only keeps "SEO content" with FAQ section and even uses a heading element for body copy.
h1 Das Telekom Sport-Angebot: Fußball, Eishockey & mehr
h2 Erleben Sie Ihre Lieblingssport-Inhalte jederzeit und überall.
Der ganze Live-Sport von WOW, DAZN und MagentaSport an einem Ort mit MagentaTV.
h2 Häufig gestellte Fragen rund um Sport bei MagentaTV
h3 Was beinhalten die Telekom Sport-Angebote auf MagentaTV?
h3 Wie funktioniert Sport bei der Telekom?
h3 Wie kann ich die Sport-Inhalte der Telekom empfangen?
h3 Muss ich Telekom Kunde sein?
h3 Was ist der Telekom Login?Remediation Notes
Ensure proper heading structure. Every element and only those elements, used as a heading visually must use semantic HTML heading elements. A recommendation for proper page structure by headings would be:
h1 Live-Sport bei Magenta TV
h2 Welchen Sport wollen Sie live bei MagentaTV sehen?
<!-- optional -->
h3 Fußball
h3 Basketball
h3 Eishockey
h3 Weiterer Sport
h2 Die Sportoptionen im Überblick
h3 MegaSport 12M Option
h3 WOW Live-Sport by Telekom 12M Option
h3 DAZN by Telekom Option
h3 MagentaSport
h2 Mehr EM ging nicht!
h2 Häufig gestellte Fragen rund um Sport bei MagentaTV
h3 Was beinhalten die Telekom Sport-Angebote auf MagentaTV?
h3 Wie funktioniert Sport bei der Telekom?
h3 Wie kann ich die Sport-Inhalte der Telekom empfangen?
h3 Muss ich Telekom Kunde sein?
h3 Was ist der Telekom Login?Section "Das Telekom Sport-Angebot: Fußball, Eishockey & mehr" as it only contains a single paragraph without any new information, should be skipped in here.
Accompanying Files
Observation Details
"Exklusiver Live-Sport von Sky Sport mit WOW, DAZN und MagentaSport in einem Paket." in section "Das komplette Sport Programm" is using <h3>. It however is visually presented and also functions as body copy.
Remediation Notes
Ensure, only headings (as they are visually presented and function as such) are using semantic HTML heading elements.
The content in question should use an HTML paragraph element <p>.
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list". E.g. stage section with main heading.On the other hand, what is arguably list content in the "Das komplette Sport Programm" section or the list in FAQ element "Wie kann ich die MegaSport Option nutzen?", is not using semantic list elements.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Ensure, to refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
Observation Details
The main heading "MegaSport" is visually hidden using CSS styles opacity:0;position:absolute;left:0;top:0. It then is visually replaced by two images: "Mega Logo" & "Sport Logo".
Remediation Notes
Ideally, the main heading stays visible and the visual effects are built with native HTML/CSS solutions. If this is not wanted or viable, the images should be the main headings content as follows:
<h1><img src="..." alt="Mega" /><img src="..." alt="Sport" /></h1>Semantic HTML heading elements are getting their accessible name from their content already. Moving the images into the main headings content will result in the wanted accessible name without code duplication or other work-arounds.
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list". E.g. stage section with main heading.On the other hand, what is arguably list content is not using semantic list elements. Examples are:
the "Das komplette Sport Programm" section
the lists in FAQ element "Was kostet MagentaSport?"
the phone numbers in FAQ element "Wie kann ich MagentaSport buchen?"
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Ensure, to refer to observation 1.3.1 Info and Relationships – "Semantic HTML" for general remarks about the use of semantic HTML.
For the FAQ item "Was kostet MagentaSport?", a semantic list structure could look like this:
<ul>
<li>
Angebote für Kunden mit bestehendem Telekom-Vertrag
<ul>
<li>Dem flexiblen Monatsabo für 12,95 € pro Monat (monatlich kündbar)</li>
<li>Dem günstigen Jahresabo für 7,95 € pro Monat mit einem Preisvorteil von 60 € pro Jahr im Vergleich zum Monatsabo. Vertragslaufzeit 12 Monate mit einem Monat Kündigungsfrist. Das Angebot beinhaltet unter anderem alle Spiele der 3. Liga, der PENNY DEL (Deutsche Eishockey Liga), der Google Pixel Frauen-Bundesliga und der Turkish Airlines EuroLeague sowie zahlreiche weitere Wettbewerbe. Mehr als 3.000 Live-Events pro Jahr.</li>
</ul>
</li>
<li>
Angebote für alle ohne Telekom-Vertrag
<ul>
<li>Dem flexiblen Monatsabo für 19,95 € pro Monat (monatlich kündbar)</li>
<li>Dem günstigen Jahresabo für 12,95 € pro Monat mit einem Preisvorteil von 84 € pro Jahr im Vergleich zum Monatsabo. Vertragslaufzeit 12 Monate mit einem Monat Kündigungsfrist. Das Angebot beinhaltet unter anderem alle Spiele der 3. Liga, der PENNY DEL (Deutsche Eishockey Liga), der Google Pixel Frauen-Bundesliga und der Turkish Airlines EuroLeague sowie zahlreiche weitere Wettbewerbe. Mehr als 3.000 Live-Events pro Jahr.</li>
</ul>
</li>
</ul>The phone numbers in FAQ item "Wie kann ich MagentaSport buchen?" can be displayed as a <dl>, ideally with linking the phone numbers.
<dl>
<div>
<dt>Für Kunden mit Telekom-Anschluss aus den Bereichen Festnetz und MagentaTV</dt>
<dd><a href="tel:08003301000">0800 330 1000</a></dd>
</div>
<div>
<dt>Für Telekom Mobilfunk-Kunden</dt>
<dd><a href="tel:08003302202">0800 330 2202</a></dd>
</div>
<div>
<dt>Für Interessenten ohne Telekom-Vertrag</dt>
<dd><a href="tel:08005446060">0800 544 6060</a></dd>
</div>
</dl>
Accompanying Files
Observation Details
The line break element <br> is used to create new lines. Line break elements do get announced by assistive technology as "empty group", making it less pleasant to navigate a page that uses them for layout purposes. Also, design-wise, a manual line break will inevitably create text content reflow issues.
Remediation Notes
Ensure, creating paragraphs only by using real new lines / paragraphs (HTML element <p>) instead of manually creating them with line breaks. In Rich-text editors within content management systems, you create proper paragraphs by pressing ENTER. Avoid pressing SHIFT + ENTER, as this creates <br> line break elements instead.
Observation Details
Visually presented heading structure does not match semantically determinable heading structure in order and markup. Visually presented heading structure is:
h1 Internet of Things
h2 Was ist IoT?
h2 Profitieren Sie mit unseren Internet‑of‑Things-Produkten
h3 Die Kids Watch für die Sicherheit Ihres Kindes
h3 Die Anio 6 als sicherer Alltagsbegleiter für Kinder
h2 Das sollten Sie zum Thema IoT wissen
h3 ...While the determinable heading structure in code markup is as follows:
h1 Was ist IoT?
h2 Profitieren Sie mit unseren Internet‑of‑Things-Produkten
h3 Die Kids Watch für die Sicherheit Ihres Kindes
h3 Die Anio 6 als sicherer Alltagsbegleiter für Kinder
h2 Das sollten Sie zum Thema IoT wissen
h3 ...The visually used main heading "Internet of Things" is not at all part of the determinable heading structure.
Remediation Notes
Main heading should provide accurate description of topic / purpose of page content; use
<h1>Internet of Things</h1>as main headingMove (visual) section heading to nested heading
<h2>Was ist IoT?</h2>
Side note: "Profitieren Sie mit unseren Internet-of-Things-Produkten" implies the opportunity to "make profit" from smartwatches. "Profitieren Sie von ..." would be more fitting choice of word.
Accompanying Files
Observation Details
Heading structure as per code markup:
h1 Wie funktioniert die Kids Watch?
h2 Die sichere GPS-Telefonuhr für Ihr Kind
h2 Eine Kinder Smartwatch - drei Farben
h2 Was Eltern über die Kids Watch XPLORA X6 Play eSIM sagen:
h2 Die GPS-Smartwatch für Kinder
h2 Sichere Bereiche für Ihr Kind durch GPS-Tracker
h2 Kinder Smartwatch mit Schulmodus
h2 SOS-Taste der Kids Watch
h2 Datenschutz
h2 Die erste Smartwatch mit eSIM für Kinder
h2 GPS-Kinderuhr mit Schrittzahler
h2 Kids Watch: So einfach geht's
h2 Kids Watch: So einfach geht's
h2 XPLORA X6 Play eSIM - Technische Daten
h3 Wasserbeständig
h3 Akkulaufzeit
h3 Speicher
h3 Geeignet für
h3 SOS-Taste
h3 Funktioniert in
h3 Gewicht
h3 Abmessungen (mm)
h2 Neugierig auf eine andere Kinderuhr mit GPS und Telefonfunktion?
h2 Kids Watches im Vergleich
h2 Fragen & Antworten zur Kids Watch
h3 Was ist die XPLORA X6 Play eSIM Smartwatch?
h3 Warum braucht Ihr Kind eine Smartwatch mit GPS-Tracker?
h3 Wie genau ist die GPS-Ortung Ihrer Kinder mit der XPLORA X6 Play eSIM Smartwatch?
h3 Warum wird für die Kids Watch ein Mobilfunktarif benötigt?
h3 Ist die Kids Watch staub- und wasserdicht?
h3 Welche Rechte haben Sie als Administrator?
h3 Was ist der Vorteil der eSIM?Observations for this heading structure:
Heading structure main heading "Wie funktioniert die Kids Watch?" & "Die sichere GPS-Telefonuhr für Ihr Kind" does not match visual presentation
Most headings level 2 (see example screenshot "Eine Kinder Smartwatch - drei Farben") add an "eyebrow" / "topline" above the heading; visual presentation implies a connection of heading and eyebrow, while markup adds eyebrow to the previous heading every time, removing the implied connection
Heading "Kids Watch: So einfach geht's" is duplicated in code
Content in section "XPLORA X6 Play eSIM - Technische Daten" uses headings level 3 while being displayed as list content
Remediation Notes
Ensure correct use of semantic HTML elements.
Use HTML headings for heading content only and match heading level hierarchy with visual presentation.
Use list elements (in this case, ideally a description list) for list content, instead of using headings with just few words of content
Accompanying Files
Observation Details
Heading structure as per code markup:
h1 Wie kann die Safety Watch als Gesundheitsuhr bei chronischen Krankheiten helfen?
h2 Funktionen der Safety Watch
h2 Gesundheitsuhr mit Notfallknopf
h2 Gesundheitsuhr mit automatischer Sturzerkennung
h2 Pulsmesser
h2 Safety Watch als Fitnessuhr
h2 Gesundheitsuhr mit Telefonfunktion
h2 Gesundheitsuhr mit Standortubermittlung
h2 Mobiler Notruf mit JohanniterCall
h2 So hilft die Safety Watch bei chronischen Krankheiten
h2 Wie eine Smartwatch mit Gesundheitsfunktionen bei Epilepsie helfen kann
h3 Wie hilft eine Safety Watch Epileptikern im Alltag?
h3 Wie kann eine Gesundheitsuhr bei Epilepsie unterstützen?
h3 Warum ist eine Gesundheitsuhr wie die Safety Watch für Epileptiker besser geeignet als ein Fitnesstracker?
h2 Wie eine Smartwatch mit Gesundheitsfunktionen bei Asthma helfen kann
h3 Sollte ich trotz Asthma Sport treiben?
h3 Wie kann die Safety Watch bei einem Asthma-Notfall helfen?
h2 Wie eine Smartwatch mit Gesundheitsfunktionen bei Diabetes helfen kann
h3 Wie kann die Safety Watch Diabetikern bei einer Unterzuckerung helfen?
h2 Wie eine Smartwatch mit Gesundheitsfunktionen bei Multiple Sklerose helfen kann
h3 Wie kann die Safety Watch für mehr Sicherheit bei MS-Patienten sorgen?
h2 Wie eine Smartwatch mit Gesundheitsfunktionen bei Bluthochdruck und Herz-Kreislauf-Erkrankungen helfen kann
h3 Wie kann die Safety Watch Menschen mit einem erhöhten Risiko für Schlaganfälle oder Herzinfarkte helfen?
h2 Safety Watch: Individualität in zwei Farben
h2 Technische Daten
h3 Wasserdicht
h3 Akkulaufzeit
h3 SOS-Taste
h3 Funktioniert in
h3 Speicher
h3 Geeignet für
h3 Gewicht
h3 Abmessungen
h2 Kostenlose App
h2 TCL Connect App herunterladen
h2 So funktioniert die Safety Watch
h2 Weitere Fragen & Antworten zur Safety Watch
h3 Warum ist die Akkulaufzeit der Safety Watch im Vergleich zu einem Fitnesstracker (z. B. fitbit) relativ kurz?
h3 Werden der Puls und die Schritte permanent live gemessen und an die App übertragen?Observations for this heading structure:
Heading structure main heading does not match visual presentation
Heading "Funktionen der Safety Watch" uses heading level 2; "Funktion" headings below also use heading level 2 instead of level 3
Heading "So hilft die Safety Watch bei chronischen Krankheiten" uses heading level 2; "Chronische Krankheiten" headings below also use heading level 2 instead of level 3
Most headings level 2 (see e.g. "Gesundheitsuhr mit Notfallknopf") add an "eyebrow" / "topline" above the heading; visual presentation implies a connection of heading and eyebrow, while markup adds eyebrow to the previous heading every time, removing the implied connection
Content in section "Technische Daten" uses headings level 3 while being displayed as list content
A few headings of sections "Chronische Krankheiten" do use heading level 2 for "Wie eine Smartwatch mit Gesundheitsfunktionen bei X helfen kann" then also include a sub-heading "Wie kann die Safety Watch bei X helfen" basically as a duplicate
Heading "TCL Connect App herunterladen" is part of "Kostenlose App" but is on same heading level
Heading level 2 "So funktioniert die Safety Watch" is redundant to "Funktionen der Safety Watch" and also redundant to the page's main heading, as this is the topic / purpose of the whole page
Remediation Notes
Ensure correct use of semantic HTML elements.
Use HTML headings for heading content only and match heading level hierarchy with visual presentation.
Use list elements (in this case, ideally a description list) for list content, instead of using headings with just few words of content
Do not duplicate headings in slightly different wordings ("Wie eine Smartwatch helfen kann" & "Wie kann eine Safety Watch helfen")
Ensure, headings describe content's topic / purpose accurately (see "So funktioniert die Safety Watch" – refer to 2.4.6 Headings and Labels)
More fitting heading structure:
h1 Für mehr Sicherheit und Aktivität – Die Telefonuhr mit SOS-Funktion
h2 Funktionen der Safety Watch
h3 Gesundheitsuhr mit Notfallknopf
h3 Gesundheitsuhr mit automatischer Sturzerkennung
h3 Pulsmesser
h3 Safety Watch als Fitnessuhr
h3 Gesundheitsuhr mit Telefonfunktion
h3 Gesundheitsuhr mit Standortübermittlung
h3 Mobiler Notruf mit JohanniterCall
h2 So hilft die Safety Watch bei chronischen Krankheiten
h3 Epilepsie – wie eine Smartwatch mit Gesundheitsfunktionen helfen kann
h3 Asthma – wie eine Smartwatch mit Gesundheitsfunktionen helfen kann
h3 Diabetes – wie eine Smartwatch mit Gesundheitsfunktionen helfen kann
h3 Multiple Sklerose – wie eine Smartwatch mit Gesundheitsfunktionen helfen kann
h3 Bluthochdruck – wie eine Smartwatch mit Gesundheitsfunktionen helfen kann
h3 Herz-Kreislauf-Erkrankungen – wie eine Smartwatch mit Gesundheitsfunktionen helfen kann
h2 Individualität in zwei Farben
h2 Technische Daten
h2 TCL Connect App
h3 App kostenlos herunterladen
h2 So machen Sie die Safety Watch einsatzbereit
h2 Weitere Fragen & Antworten zur Safety Watch
h3 Warum ist die Akkulaufzeit der Safety Watch im Vergleich zu einem Fitnesstracker (z. B. fitbit) relativ kurz?
h3 Werden der Puls und die Schritte permanent live gemessen und an die App übertragen? Accompanying Files
Observation Details
List content uses generic container elements and numbered icon graphics to simulate list.
Remediation Notes
For all list content, ensure using semantic HTML list elements.
Side note: the list heading does not accurately describe the list's purpose; see 2.4.6 Headings and Labels
Accompanying Files
Observation Details
List content uses generic container elements and numbered icon graphics to simulate list.
Remediation Notes
For all list content, ensure using semantic HTML list elements.
Side note: the list heading does not accurately describe the list's purpose; see 2.4.6 Headings and Labels
Accompanying Files
Observation Details
Stage section "Gemeinsam sicher fühlen – Die Telefonuhr mit SOS-Funktion" & "Was ist die Safety Watch?" is visually presented as headings but not using HTML heading elements.
Remediation Notes
Ensure, providing proper semantic markup for headings. All headings must use HTML heading elements, all non-headings must not.
Accompanying Files
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure includes:
1 Vertrag verlängern
2 Vertrag verlängern
2 Tarif wechseln
2 Top-Smartphones zum Spitzenpreis
3 Samsung Galaxy S25 Ultra
3 ...
2 MagentaEINS-Vorteil
2 Apple und Telekom im besten Netz
2 Unser Dankeschön für Sie:
2 Sie möchten eine persönliche Beratung?
3 Telekom Shops in Ihrer Nähe
3 Magenta Service Live
2 Häufig gestellte Fragen rund um die Telekom Vertragsverlängerung
3 Sie möchten Ihren Mobilfunktarif wechseln?
3 ...The programmatically determinable heading structure, using HTML heading elements is limited to the FAQ section.
Observations for heading structure:
The main heading "Vertrag verlängern" is not using an
<h1>element.The
<h1>element instead is used on the FAQ section at the end of the page.Headings do not use semantic HTML elements (
<h1>,<h2>,<h3>, ...). They are using more generic (<span>) or even wrong (<p>) HTML elements and add CSS classes to style them so they look like headings."Vertrag verlängern" heading is duplicated
"Vertrag verlängern" & "Tarif wechseln" are presented as a group of headings but do not have a parent heading to group them
"MagentaEINS-Vorteil" & "Apple und Telekom im besten Netz" are presented as a group of headings but do not have a parent heading to group them
The sections "Top-Smartphones zum Spitzenpreis", "MagentaEINS-Vorteil" & "Apple und Telekom im besten Netz", "Unser Dankeschön für Sie:" do not show their relevance to the page's topic and do not fit the general outline of the page as they function as a group but are not grouped
("Unser Dankeschön für Sie:" uses a colon ":"; best practice is to not use punctuation (except "!" and "?") in headings. If the use of punctuation is necessary, there probably is an issue with either styling or outline structure)
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Taking the presented headings and building a better outline could look like this:
1 Vertrag verlängern
2 Was möchten Sie tun?
3 Vertrag verlängern
3 Tarif wechseln
2 Ihre Vorteile bei einer Vertragsverlängerung
3 Top-Smartphones zum Spitzenpreis
4 Samsung Galaxy S25 Ultra
4 ...
3 MagentaEINS-Vorteil
3 Apple und Telekom im besten Netz
3 Unser Dankeschön für Sie:
2 Sie möchten eine persönliche Beratung?
3 Telekom Shops in Ihrer Nähe
3 Magenta Service Live
2 Häufig gestellte Fragen rund um die Telekom Vertragsverlängerung
3 Sie möchten Ihren Mobilfunktarif wechseln?
3 ...This creates a good, scannable base outline of the page, representing the most important sections and grouping existing content within this structure:
2 Was möchten Sie tun?
2 Ihre Vorteile bei einer Vertragsverlängerung
2 Sie möchten eine persönliche Beratung?
2 Häufig gestellte Fragen rund um die Telekom VertragsverlängerungSide note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Semantic elements:
<p> </p><br>...
Non-semantic empty elements:
<div> </div><div class="leftFade"></div><div class="rightFade"></div>...
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Elements found:
<br>(FAQ item "Wie steht es mit der Sicherheit bei Internet of Things?")
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Line break elements found in FAQ item "Was beinhalten die Telekom Sport-Angebote auf MagentaTV?"
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets; for all other purposes, use actual paragraph elements
Accompanying Files
Observation Details
Elements found:
<b>for emphasized text content
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Magenta Sport: Live-Sport überall streamen
h2 Alle Angebote im Überblick
h2 Das ganze Sporterlebnis bei MagentaSport
h3 Alle Spiele live und auf Abruf – auf jedem Gerät
h3 Der Highlight-Ticker der 3. Liga, Coupe de France und PENNY DEL
h2 Der komplette Live-Sport in einem Paket
h2 Häufig gestellte Fragen zu MagentaSport
h3 Was kostet MagentaSport?
h3 Wie kann ich MagentaSport buchen?
h3 Welche Sportarten enthält MagentaSport?
h3 Auf wie vielen Geräten kann ich MagentaSport nutzen?The programmatically determinable heading structure, using HTML heading elements is as follows:
<H1> MagentaSport: Alle Angebote im Überblick
<H2> Das ganze Sporterlebnis bei MagentaSport
<H3> 3. Liga Hidden
<H3> PENNY DEL Hidden
<H3> Google Pixel Frauen-Bundesliga Hidden
<H3> Turkish Airlines EuroLeague Hidden
<н3> BKT EuroCup Hidden
<H3> Basketball-Länderspiele Hidden
<H3> FIBA EuroBasket 2025 Hidden
<H3> FIBA Women's EuroBasket 2025 Hidden
<H3> FIBA Länderspiele Hidden
<H3> Eishockey-Länderspiele Hidden
<H3> IIHF Weltmeisterschaften Hidden
<H3> Champions Hockey League Hidden
<H3> Deutscher Hockey Bund Hidden
<H3> EuroHockey Championships 2025 Hidden
<H3> FIH Hockey Pro League Hidden
<H3> EuroHockey Indoor Championship 2026 Hidden
<H3> Coupe de France Hidden
<H3> Sportdigital FUSSBALL Hidden
<H2> Alle Spiele live und auf Abruf - auf jedem Gerät
<H2> Der Highlight-Ticker der 3. Liga, Coupe de France und PENNY DEL
<H2> Push-Mitteilungen direkt auf Ihr Smartphone
<H2> Der komplette Live-Sport in einem Paket
<H2> Häufig gestellte Fragen zu MagentaSport
<H3> Was kostet MagentaSport?
<H3> Wie kann ich MagentaSport buchen?
<H3> Welche Sportarten enthält MagentaSport?
<H3> Auf wie vielen Geräten kann ich MagentaSport nutzen?Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
<b>used for emphasis of text content in tariff cards
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Some paragraphs in FAQ items don't use <p>. While no strict failure of success criterion 1.3.1 Info and Relationships, it is best practice to use paragraphs for all paragraph content. HTML paragraph elements carry the role "paragraph", while the <div> element is role "generic". In the given case, there is no difference in announcement for assistive technology. Building multi-paragraph structure with generic role elements may cause issues, though. Implementing use of proper paragraph throughout will ensure, these do not cause any issues.
Remediation Notes
Ensure proper use of semantic HTML elements. For paragraphs, use the HTML paragraph element <p>.
Observation Details
What is arguably list content, is not using semantic list elements. See
content in "XPLORA X6 Play eSIM – Technische Daten" (using heading structure right now)
Remediation Notes
Use semantic list for all list content. The "technische Daten" content can ideally be displayed in an HTML description list <dl>.
<dl>
<div>
<dt>Wasserbeständigkeit</dt>
<dd>IP 68</dd>
</div>
<div>
<dt>SOS-Taste</dt>
<dd>...</dd>
</div>
...
</dl>Remediation Notes
Ideally, the row header is set to convey the row's purpose. The announcement of cells to assistive technology uses row/column headers to identify cells correctly. Use a row header like "Link zum Shop". This can also be hidden via a visually hidden class like this:
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Accompanying Files
Observation Details
Multiple line break elements found.
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
The decorative text content:
Young Tarif | Streaming-Vorteil | Young Tarif | Streaming-Vorteil | Young Tarif | Streaming-Vorteil | Young Tarif | Streaming-Vorteil |
Is announced to assistive technology as
Young Tarif vertical bar Streaming-Vorteil vertical bar Young Tarif vertical bar Streaming-Vorteil vertical bar Young Tarif vertical bar Streaming-Vorteil vertical bar Young Tarif vertical bar Streaming-Vorteil vertical bar
Remediation Notes
If the information, provided in text content, is already provided in the preceding content, the decorative text content should be hidden from assistive technology e.g. by using aria-hidden="true".
A role="presentation", while useful in other situations, would not have the intended effect in the given situation, as it only removes the semantics from the element. As the content uses <div><span>...</span></div> there is no removable semantics.
Accompanying Files
Observation Details
The ordered list in dialog window "So einfach bekommst Du den Vorteil" uses "custom list markers" with CSS content: counter(magenta-counter).
List items in semantic HTML lists are automatically numbered and the count is announced by assistive technology by default. Adding a separate count as accessible content via CSS content results in duplication of count announcement.
Remediation Notes
Ideally, remove custom counter content and use semantic HTML elements without modification to keep correct announcement for assistive technology.
If customization is obligatory, use the custom marker on the actual ::marker instead of removing it and providing custom content in ::after. For more information about this, refer to W3C – CSS Lists and Counters.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 30 Jahre (Telekom). Wir feiern mit tollen Angeboten und Aktionen
h2 Unsere Top Deals
h3 iPhone 16 128 GB
h3 MagentaTV Smart für 0 €
h3 240 € Wechselbonus
h3 Kids Watch für 1 €
h2 Unsere Smartphone-Highlights von Apple
h3 Apple iPhone 16 128 GB
h3 Apple iPhone 15 128 GB
h3 Apple iPhone 16 Pro 128 GB
h3 Apple iPhone 15 Pro Max 256 GB
h2 Weitere Top Smartphones im Angebot
...
h2 Unsere Mobilfunk-Deals zum Jubiläum
...
h2 Unsere TV & Internet-Geburtstags-Angebote
...
h2 Zubehör-Highlights von Apple
...
h2 Unsere Magenta Moments
h3 Exklusive Geschenke, Angebote und Gewinnspiele für unsere Kunden
...
h2 Feiern Sie mit: 30 Jahre Telekom mit exklusiven Jubiläumsaktionen
h2 Entdecken Sie unsere Telekom-AktionenThe programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Aktuelle Angebote & Aktionen
h2 Unsere Top Deals
h2 Unsere Smartphone-Highlights von Apple
h2 Weitere Top Smartphones im Angebot
h2 Unsere Mobilfunk-Deals zum Jubiläum
h2 Unsere TV & Internet-Geburtstags-Angebote
h2 Zubehör-Highlights von Apple
h2 Unsere Magenta Moments
h2 Feiern Sie mit: 30 Jahre Telekom mit exklusiven Jubiläumsaktionen
h2 Entdecken Sie unsere Telekom-AktionenObservations for heading structure:
Visual main heading not used as heading at all
SEO headings
"Feiern Sie mit" repeats content (offers) from other sections
"Entdecken Sie unsere Telekom-Aktionen" introduces content that introduces the whole page
No headings are used for actual offers; as navigation by heading structure is used most by users of assistive technology, the individual offers will be more difficult to reach for certain user groups
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Observation Details
What is arguably list content, is not using semantic list elements. See
Deal / offer sections
When navigating list content, the use of semantic list elements will greatly increase user experience for users of assistive technology. The current structure does not allow, getting an overview of deals, number of offers, etc. By using semantic list elements, it is possible for users of assistive technology to navigate to a section, directly know the count of deals / offers (that sighted users can work out by visible cards and pagination buttons), and to navigate each of those deals individually.
Remediation Notes
Do use semantic list elements for all list content. An example structure for a deal section could be:
<div> <!-- no need for section element, as heading will label section already -->
<h2>Unsere Smartphone-Highlights von Apple</h2>
<ul>
<li>
<!-- IDs must be unique -->
<article aria-labelledby="heading price statt" class="card">
<h3 id="heading">Apple iPhone 16 128 GB</h3>
<dl>
<!-- terms could be visually hidden -->
<div>
<dt>Angebotspreis</dt>
<dd id="price">1 €</dd>
</div>
<div>
<dt>Alter Preis</dt>
<dd id="statt">statt <s>449,95</s> €</dd>
<dt>Ersparnis</dt>
<dd id="ersparnis">448,95 €</dd>
</div>
<div>
<dt>Tarif</dt>
<dd id="tarif">im Tarif MagentaMobil L mit Smartphone</dd>
</div>
<div>
<dt>Ankaufsbonus</dt>
<dd id="ankauf">100 €</dd>
</div>
<div>
<dt>Wechselbonus</dt>
<dd id="wechsel">240 €</dd>
</div>
</dl>
<p>
<a aria-labelledby="cta heading price" id="cta" href="...">Zum Angebot</p>
</article>
</li>
...
</ul>
</div>A robust card structure allows for every styling option as well.
Observation Details
Line break element found
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
The page uses HTML list element in section "Unsere Smartphone-Tarife" to list the cards.
class="cards-cta-card-group"
On the other hand, a list is not used in section "Weitere Mobilfunk-Tarife" which follows the same card structure.
Remediation Notes
Ensure consistent use of semantic HTML structure. If lists are used for a section with a list of cards, ensure using lists for all similar structured sections. This will create a better user experience, as the user will expect the same structure for similar sections.
Observation Details
What is arguably list content, is not using semantic list elements. See
Product cards
Color variant circles on product cards
Remediation Notes
Ensure, using semantic list elements for all list content.
Accompanying Files
Observation Details
The device list presentation suggests the code to be marked up like this:
<!-- Device list -->
<div>
<!-- Device card -->
<article>
<span><!-- Badge --></span>
<img /><!-- Device image -->
<h2><!-- Device name --></h2>
<p><!-- Storage --></p>
<p><!-- Price info --></p>
<p><!-- Price --></p>
</article>
<!-- More device cards -->
</div>Instead, there are no headings, sections, articles, divs and spans are nested many hierarchy levels and an empty link is present.
Remediation Notes
Ensure, code markup matches the visual presentation. One possible solution could be a structure as follows:
<h2></h2> <!-- Heading to introduce device list -->
<!-- Device list -->
<ul>
<li>
<!-- Device card -->
<article>
<h3></h3> <!-- Device name -->
<span></span> <!-- Badge with promotion/info -->
<dl>
<div>
<dt class="visually-hidden">Verfügbar in den Farben</dt>
<dd>
<ul></ul> <!-- Available colors -->
</dd>
</div>
<div>
<dt>Preis, einmalig</dt>
<dd></dd> <!-- Price -->
</div>
</dl>
<img /><!-- Device image -->
</article>
</li>
<!-- More device cards -->
</ul>Improvements made and notes to implement:
Clear structure without unnecessary nesting, without sections/articles nested, etc.
Use actual semantic list (
<ul>) for the listEach product is an
<article>so it can be navigated to easily via screen readerProduct is defined by semantic heading
<h3>as first child of product card<span>with badge positioned right after heading, so it will be announced after the device name; badge can be positioned absolute or visually be moved up by using CSSorder: -1Product description is moved into description list to make each description detail easily navigable
Lists within the description (color list, storage option list) are using semantic list elements
Some
<dt>can use aclass="visually-hidden"to be accessible to screen readers while not being visible; check example class below
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Added side-effect of a semantic structure like this is the improved simplicity to build a responsive layout for the list, using CSS grid and Flexbox.
Accompanying Files
Observation Details
The sidebar section "Unsere Empfehlung" and "Ich möchte" uses visual presentation (and CSS classes) of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content.
<h2>Unsere Empfehlung</h2>
<h3>MagentaMobil Speedbox S mit 100 GB</h3>
<p>...</p>
<p><a href="...">...</a></p>
<h2>Ich möchte</h2>
<p>...</p>
<p><a href="...">...</a></p>Observation Details
This observation is a general remark on semantic HTML, as there are numerous issues with improper use (or complete lack of use) of semantic HTML.
Remediation Notes
Semantic HTML
Ensure, using proper semantic HTML. This means,
If there is an HTML element with needed or wanted functionality, use it.
If a link is needed, use
<a>, if a button is needed, use<button>– also, using links and buttons as intended (links to move to content and buttons to do an action) will help navigation immensely, as e.g. screen readers can return lists of buttons/links independently. So knowing what elements will keep you on the page (footnote buttons) and what elements will bring you somewhere (product detail page) is simply made possible by using the correct element.If creating user interface components with input controls like checkboxes, radio buttons, etc., use the appropriate, native semantic HTML elements for them. Use
<input type="">,<select>,<button>, ... to ensure accessibility.If writing headings, use the proper semantic HTML headings (
<h1>,<h2>,<h3>,<h4>)If you are listing elements (color variants, storage options, products, ...), use semantic list elements (
<ul>for lists, where the order is not relevant,<ol>for lists, where the order is relevant,<dl>for key-value-paired descriptions)
Visual presentation MUST match code markup. If it looks like a heading, semantic HTML heading elements MUST be used. If it does not look like a heading, semantic HTML heading elements MUST NOT be used. Same goes for every other native HTML element.
Grouping elements/objects/content for layout or styling purposes must only be done, using generic HTML elements.
There are only 2 generic HTML elements named in MDN docs – ARIA: generic role. No other element shall be used for this purpose. Those are
<div>,<span>,Additionally, the
<section>element has the generic role, too. The section however comes with a very crucial limitation, as it "should always have a heading, with very few exceptions".
Best practice HTML nesting
Ensure, using as little nesting as possible. Every single level of nesting inside HTML code will impact website performance. Using a 10-level-hierarchy to create a button with <div>s etc., is completely unnecessary, as a <button>Button text</button> will result in accessible, robust, portable solution and will always outperform.
Outline / Heading structure
Ensure use of heading structure for a page's content. Headings are the most used method to navigate the broad structure of a website for users of screen readers. A clear heading structure will also increase SEO performance. The shop page only uses a single main heading and no more. A good structure could be:
<main>
2 Passende Tarife zu den mobilen Routern
1 Mobile 5G-Router mit Vertrag
2 Filter und Sortierung
2 Geräteliste
3 GERÄTENAME
3 ...
2 Verlässlicher Service rund um Ihre Bestellung
<!-- as each "feature" has very limited content, headings may not be the best way to organize; evaluate use of list structure -->
2 Mit den Surfsticks und mobilen ...
2 Häufig gestellte Fragen ...
3 ...
<aside>
2 Auswahl ("Warenkorb")
3 Tarif
3 Gerät
2 Vorteile im Überblick
3 Unbegrenztes Datenvolumen
3 MagentaEINS VorteilObservation Details
The section "Verlässlicher Service rund um Ihre Bestellung" arguably houses a list of services but is not using semantic HTML list elements. While this is not a strict failure of this success criterion, remediation is recommended.
Observation Details
What is arguably list content, is not using semantic list elements. See
Product cards
Color variant circles on product cards
Remediation Notes
Ensure, using semantic list elements for all list content.
Accompanying Files
Observation Details
The FAQ section houses at least one empty <p> element (class names for reachability: sc-feUZmu ibaGoG).
Paragraphs have an ARIA role paragraph always making them be announced by screen readers. Empty paragraph elements lead to the announcement of "empty group".
Paragraph elements must never be empty.
Remediation Notes
Ideally, creation of empty paragraph elements will technically be prohibited.
Content management however must ensure, not creating empty paragraph elements, not in rich text nor source code editor.
Side note: while this issue is about the found empty paragraph element, there are rare occasions, any element should be empty.
Accompanying Files
Observation Details
The navigational items in the device category list above the page's main heading are not using semantic HTML navigation element <nav>.
Remediation Notes
Use proper semantic HTML structure to create navigation landmark. Ensure, labelling the <nav> element to differentiate from main, breadcrumb and other menu(s).
Accompanying Files
Observation Details
The device list presentation suggests the code to be marked up like this:
<!-- Device list -->
<div>
<!-- Device card -->
<article>
<span><!-- Badge --></span>
<img /><!-- Device image -->
<h2><!-- Device name --></h2>
<p><!-- Storage --></p>
<p><!-- Price info --></p>
<p><!-- Price --></p>
</article>
<!-- More device cards -->
</div>Instead, there are no headings, sections, articles, divs and spans are nested many hierarchy levels and an empty link is present.
Remediation Notes
Ensure, code markup matches the visual presentation. One possible solution could be a structure as follows:
<h2></h2> <!-- Heading to introduce device list -->
<!-- Device list -->
<ul>
<li>
<!-- Device card -->
<article>
<h3></h3> <!-- Device name -->
<span></span> <!-- Badge with promotion/info -->
<dl>
<div>
<dt class="visually-hidden">Verfügbar in den Farben</dt>
<dd>
<ul></ul> <!-- Available colors -->
</dd>
</div>
<div>
<dt class="visually-hidden">Speicherplatz</dt>
<dd>
Verfügbar in
<ul></ul> <!-- Storage options -->
</dd>
</div>
<div>
<dt>Preis, einmalig</dt>
<dd></dd> <!-- Price -->
</div>
</dl>
<img /><!-- Device image -->
</article>
</li>
<!-- More device cards -->
</ul>Improvements made and notes to implement:
Clear structure without unnecessary nesting, without sections/articles nested, etc.
Use actual semantic list (
<ul>) for the listEach product is an
<article>so it can be navigated to easily via screen readerProduct is defined by semantic heading
<h3>as first child of product card<span>with badge positioned right after heading, so it will be announced after the device name; badge can be positioned absolute or visually be moved up by using CSSorder: -1Product description is moved into description list to make each description detail easily navigable
Lists within the description (color list, storage option list) are using semantic list elements
Some
<dt>can use aclass="visually-hidden"to be accessible to screen readers while not being visible; check example class below
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Added side-effect of a semantic structure like this is the improved simplicity to build a responsive layout for the list, using CSS grid and Flexbox.
Accompanying Files
Observation Details
The sidebar section "Ich möchte" uses visual presentation of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content. How the heading is worded, potentially the most fitting element structure would be a a heading level 2 and an unordered list.
<h2>Ich möchte...</h2>
<ul><li>...Observation Details
The section "Verlässlicher Service rund um Ihre Bestellung" arguably houses a list of services but is not using semantic HTML list elements. While this is not a strict failure of this success criterion, remediation is recommended.
Accompanying Files
Observation Details
The FAQ section houses at least one empty <p> element (class names for reachability: sc-feUZmu ibaGoG).
Paragraphs have an ARIA role paragraph always making them be announced by screen readers. Empty paragraph elements lead to the announcement of "empty group".
Paragraph elements must never be empty.
Remediation Notes
Ideally, creation of empty paragraph elements will technically be prohibited.
Content management however must ensure, not creating empty paragraph elements, not in rich text nor source code editor.
Side note: while this issue is about the found empty paragraph element, there are rare occasions, any element should be empty.
Accompanying Files
Observation Details
The navigational items in the device category list above the page's main heading are not using semantic HTML navigation element <nav>.
Remediation Notes
Use proper semantic HTML structure to create navigation landmark. Ensure, labelling the <nav> element to differentiate from main, breadcrumb and other menu(s).
Observation Details
The device list presentation suggests the code to be marked up like this:
<!-- Device list -->
<div>
<!-- Device card -->
<article>
<span><!-- Badge --></span>
<img /><!-- Device image -->
<h2><!-- Device name --></h2>
<p><!-- Storage --></p>
<p><!-- Price info --></p>
<p><!-- Price --></p>
</article>
<!-- More device cards -->
</div>Instead, there are no headings, sections, articles, divs and spans are nested many hierarchy levels and an empty link is present.
Remediation Notes
Ensure, code markup matches the visual presentation. One possible solution could be a structure as follows:
<h2></h2> <!-- Heading to introduce device list -->
<!-- Device list -->
<ul>
<li>
<!-- Device card -->
<article>
<h3></h3> <!-- Device name -->
<span></span> <!-- Badge with promotion/info -->
<dl>
<div>
<dt class="visually-hidden">Verfügbar in den Farben</dt>
<dd>
<ul></ul> <!-- Available colors -->
</dd>
</div>
<div>
<dt>Preis, einmalig</dt>
<dd></dd> <!-- Price -->
</div>
</dl>
<img /><!-- Device image -->
</article>
</li>
<!-- More device cards -->
</ul>Improvements made and notes to implement:
Clear structure without unnecessary nesting, without sections/articles nested, etc.
Use actual semantic list (
<ul>) for the listEach product is an
<article>so it can be navigated to easily via screen readerProduct is defined by semantic heading
<h3>as first child of product card<span>with badge positioned right after heading, so it will be announced after the device name; badge can be positioned absolute or visually be moved up by using CSSorder: -1Product description is moved into description list to make each description detail easily navigable
Lists within the description (color list, storage option list) are using semantic list elements
Some
<dt>can use aclass="visually-hidden"to be accessible to screen readers while not being visible; check example class below
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Added side-effect of a semantic structure like this is the improved simplicity to build a responsive layout for the list, using CSS grid and Flexbox.
Accompanying Files
Observation Details
The sidebar section "Vorteile im Überblick" uses visual presentation (and CSS classes) of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content.
<h2>Vorteile im Überblick</h2>
<h3>Unbegrenztes Datenvolumen</h3>
<p>...</p>
<p><a href="...">...</a></p>
<h3>MagentaEINS Vorteil</h3>
<p>...</p>
<p><a href="...">...</a></p>Observation Details
The section "Verlässlicher Service rund um Ihre Bestellung" arguably houses a list of services but is not using semantic HTML list elements. While this is not a strict failure of this success criterion, remediation is recommended.
Accompanying Files
Observation Details
The FAQ section houses at least one empty <p> element (class names for reachability: sc-feUZmu ibaGoG).
Paragraphs have an ARIA role paragraph always making them be announced by screen readers. Empty paragraph elements lead to the announcement of "empty group".
Paragraph elements must never be empty.
Remediation Notes
Ideally, creation of empty paragraph elements will technically be prohibited.
Content management however must ensure, not creating empty paragraph elements, not in rich text nor source code editor.
Side note: while this issue is about the found empty paragraph element, there are rare occasions, any element should be empty.
Accompanying Files
Observation Details
The navigational items in the device category list above the page's main heading are not using semantic HTML navigation element <nav>.
Remediation Notes
Use proper semantic HTML structure to create navigation landmark. Ensure, labelling the <nav> element to differentiate from main, breadcrumb and other menu(s).
Observation Details
The device list presentation suggests the code to be marked up like this:
<!-- Device list -->
<div>
<!-- Device card -->
<article>
<span><!-- Badge --></span>
<img /><!-- Device image -->
<h2><!-- Device name --></h2>
<p><!-- Storage --></p>
<p><!-- Price info --></p>
<p><!-- Price --></p>
</article>
<!-- More device cards -->
</div>Instead, there are no headings, sections, articles, divs and spans are nested many hierarchy levels and an empty link is present.
Remediation Notes
Ensure, code markup matches the visual presentation. One possible solution could be a structure as follows:
<h2></h2> <!-- Heading to introduce device list -->
<!-- Device list -->
<ul>
<li>
<!-- Device card -->
<article>
<h3></h3> <!-- Device name -->
<span></span> <!-- Badge with promotion/info -->
<dl>
<div>
<dt class="visually-hidden">Verfügbar in den Farben</dt>
<dd>
<ul></ul> <!-- Available colors -->
</dd>
</div>
<div>
<dt>Preis, einmalig</dt>
<dd></dd> <!-- Price -->
</div>
</dl>
<img /><!-- Device image -->
</article>
</li>
<!-- More device cards -->
</ul>Improvements made and notes to implement:
Clear structure without unnecessary nesting, without sections/articles nested, etc.
Use actual semantic list (
<ul>) for the listEach product is an
<article>so it can be navigated to easily via screen readerProduct is defined by semantic heading
<h3>as first child of product card<span>with badge positioned right after heading, so it will be announced after the device name; badge can be positioned absolute or visually be moved up by using CSSorder: -1Product description is moved into description list to make each description detail easily navigable
Lists within the description (color list, storage option list) are using semantic list elements
Some
<dt>can use aclass="visually-hidden"to be accessible to screen readers while not being visible; check example class below
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Added side-effect of a semantic structure like this is the improved simplicity to build a responsive layout for the list, using CSS grid and Flexbox.
Accompanying Files
Observation Details
The sidebar section "Ich möchte" uses visual presentation of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content. How the heading is worded, potentially the most fitting element structure would be a a heading level 2 and an unordered list.
<h2>Ich möchte...</h2>
<ul><li>...Observation Details
The sidebar section "Vorteile im Überblick" uses visual presentation (and CSS classes) of a heading structure that is not reflected in the HTML markup. Visual presentation MUST match code markup.
Remediation Notes
Use proper semantic HTML headings to indicate the structure of the sidebar content.
<h2>Vorteile im Überblick</h2>
<h3>MagentaEINS Vorteil</h3>
<p>...</p>
<p><a href="...">...</a></p>Observation Details
The section "Verlässlicher Service rund um Ihre Bestellung" arguably houses a list of services but is not using semantic HTML list elements. While this is not a strict failure of this success criterion, remediation is recommended.
Accompanying Files
Observation Details
The FAQ section houses at least one empty <p> element (class names for reachability: sc-feUZmu ibaGoG).
Paragraphs have an ARIA role paragraph always making them be announced by screen readers. Empty paragraph elements lead to the announcement of "empty group".
Paragraph elements must never be empty.
Remediation Notes
Ideally, creation of empty paragraph elements will technically be prohibited.
Content management however must ensure, not creating empty paragraph elements, not in rich text nor source code editor.
Side note: while this issue is about the found empty paragraph element, there are rare occasions, any element should be empty.
Accompanying Files
Observation Details
The navigational items in the device category list above the page's main heading are not using semantic HTML navigation element <nav>.
Remediation Notes
Use proper semantic HTML structure to create navigation landmark. Ensure, labelling the <nav> element to differentiate from main, breadcrumb and other menu(s).
Observation Details
The device list presentation suggests the code to be marked up like this:
<!-- Device list -->
<div>
<!-- Device card -->
<article>
<span><!-- Badge --></span>
<img /><!-- Device image -->
<h2><!-- Device name --></h2>
<p><!-- Storage --></p>
<p><!-- Price info --></p>
<p><!-- Price --></p>
</article>
<!-- More device cards -->
</div>Instead, there are no headings, sections, articles, divs and spans are nested many hierarchy levels and an empty link is present.
Remediation Notes
Ensure, code markup matches the visual presentation. One possible solution could be a structure as follows:
<h2></h2> <!-- Heading to introduce device list -->
<!-- Device list -->
<ul>
<li>
<!-- Device card -->
<article>
<h3></h3> <!-- Device name -->
<span></span> <!-- Badge with promotion/info -->
<dl>
<div>
<dt class="visually-hidden">Verfügbar in den Farben</dt>
<dd>
<ul></ul> <!-- Available colors -->
</dd>
</div>
<div>
<dt class="visually-hidden">Speicherplatz</dt>
<dd>
Verfügbar in
<ul></ul> <!-- Storage options -->
</dd>
</div>
<div>
<dt>Preis, einmalig</dt>
<dd></dd> <!-- Price -->
</div>
</dl>
<img /><!-- Device image -->
</article>
</li>
<!-- More device cards -->
</ul>Improvements made and notes to implement:
Clear structure without unnecessary nesting, without sections/articles nested, etc.
Use actual semantic list (
<ul>) for the listEach product is an
<article>so it can be navigated to easily via screen readerProduct is defined by semantic heading
<h3>as first child of product card<span>with badge positioned right after heading, so it will be announced after the device name; badge can be positioned absolute or visually be moved up by using CSSorder: -1Product description is moved into description list to make each description detail easily navigable
Lists within the description (color list, storage option list) are using semantic list elements
Some
<dt>can use aclass="visually-hidden"to be accessible to screen readers while not being visible; check example class below
.visually-hidden:not(:focus):not(:active) {
clip: rect(0 0 0 0);
clip-path: inset(50%);
height: 1px;
overflow: hidden;
position: absolute;
white-space: nowrap;
width: 1px;
}Added side-effect of a semantic structure like this is the improved simplicity to build a responsive layout for the list, using CSS grid and Flexbox.
Accompanying Files
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 MagentaMobil Data: Datentarife zum attraktiven Preis
h2 Wählen Sie Ihren Datentarif
h3 5 GB Datenvolumen
h3 10 GB Datenvolumen
h3 25 GB Datenvolumen
h2 Bei MagentaMobil Data inklusive
h3 Auf Wunsch: Gerät inklusive
h3 Größtes 5G-Netz
h3 Telekom HotSpot Flat
h3 EU-Roaming
h2 Gute Gründe für die Datentarife der Telekom
h3 Erlebnisse teilen
h3 Immer in Kontakt bleiben
h3 Unterwegs Spaß haben
h2 Häufig gestellte Fragen zu unseren Datentarifen
h3 Was ist MagentaMobil Data?
h3 Welcher Datentarif ist für mich der richtige?
h3 Mit welcher Geschwindigkeit kann ich bei den Datentarifen der Telekom surfen?
h3 Welcher Datentarif passt besser – ohne Laufzeit, mit Vertrag oder Prepaid?
h2 Datentarife individuell nach Ihren Wünschen
h3 Hervorragende Netzabdeckung mit Datentarifen mit LTE oder 5G
h3 HotSpot-Flatrate schont Ihr Datenvolumen
h2 Direkteinstiege
h3 Smartphones
h3 Tarife
h3 Themen
h2 Vorteile im Überblick
h3 MagentaEINS Vorteil
The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Wählen Sie Ihren Datentarif
h2 Bei MagentaMobil Data inklusive
h3 Auf Wunsch: Gerät inklusive
h3 Größtes 5G-Netz
h3 Telekom HotSpot Flat
h3 EU-Roaming
h2 Gute Gründe für die Datentarife der Telekom
h3 Erlebnisse teilen
h3 Immer in Kontakt bleiben
h3 Unterwegs Spaß haben
h2 Häufig gestellte Fragen zu unseren Datentarifen
h3
h2 Datentarife individuell nach Ihren Wünschen
h3 Hervorragende Netzabdeckung mit Datentarifen mit LTE oder 5G
h3 HotSpot-Flatrate schont Ihr Datenvolumen
h2 Smartphones
h2 Tarife
h2 Themen
h3 Vorteile im Überblick
h4 MagentaEINS VorteilObservations for heading structure:
Visual main heading does not use semantic HTML heading element
Sub heading uses main heading
<h1>elementEmpty
<h3>element at beginning of FAQFAQ items do not use heading elements
Heading "Direkteinstiege" does not use semantic HTML heading element
Direkteinstiege sub headings do not fit logically ("Wählen Sie Ihren Datentarif" → "Smartphone" / ...)
Sidebar has no heading level 2 to group its content, making "Vorteile im Überblick" a programmatic child of the preceding "Direkteinstiege" sub heading "Themen"
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Heading structure as per code markup:
h1 Was ist das Besondere an der Anio Kinderuhr mit GPS?
h2 Für mehr Sicherheit und Selbständigkeit
h2 Die GPS-Kinderuhr – so individuell wie Ihr Kind
h2 Was Eltern über die GPS-Kinderuhr Anio 6 sagen
h2 Die Kinderuhr mit GPS
h2 SOS-Knopf der Kinderuhr mit GPS
h2 Sichere Bereiche festlegen
h2 Schulmodus bei der Kinderuhr mit GPS
h2 Datenschutz
h2 Schrittzähler
h2 Lern-Ziffernblatt
h2 Kinderuhr mit GPS Anio 6: So einfach geht's
h2 Kinderuhr mit GPS Anio 6:So einfach geht's
h2 Kinderuhr mit GPS Anio 6 - Technische Daten
h3 Wasserbeständig
h3 Akkulaufzeit
h3 Speicher
h3 Geeignet für
h3 SOS-Taste
h3 Funktioniert in
h3 Gewicht
h3 Abmessungen (mm)
h2 GPS-Kinderuhren im Vergleich: Anio 6 vs. XPLORA 6 Play eSIM
h2 Vergleich der technischen Daten von Anio 6 und XPLORA X6 Play eSIM
h2 Fragen & Antworten zur GPS-Kinderuhr Anio 6
h2 Smartphones
h2 Tarife
h2 ThemenObservations for this heading structure:
Heading structure main heading "Was ist das Besondere an der Anio Kinderuhr mit GPS?" & "Für mehr Sicherheit und Selbständigkeit" does not match visual presentation
Main heading implies all content on page is about "Besonderheiten" of Anio watch
"Für mehr Sicherheit und Selbstständigkeit" does not accurately describes its following content
Most headings level 2 add an "eyebrow" / "topline" above the heading; visual presentation implies a connection of heading and eyebrow, while markup adds eyebrow to the preceding heading every time, removing the implied connection
Heading "Kinderuhr mit GPS Anio 6: So einfach geht's" is duplicated in code
Content in section "Technische Daten" uses headings level 3 while being displayed as list content
"Direkteinstiege" headings are on level 2, instead of being grouped by "Direkteinstiege"
FAQ items do not show as headings
Remediation Notes
Ensure correct use of semantic HTML elements.
Use HTML headings for heading content only and match heading level hierarchy with visual presentation.
Use list elements (in this case, ideally a description list) for list content, instead of using headings with just few words of content
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
What is arguably list content, is not using semantic list elements. See
content in "Technische Daten" (using heading structure right now)
Remediation Notes
Use semantic list for all list content. The "technische Daten" content can ideally be displayed in an HTML description list <dl>.
<dl>
<div>
<dt>Wasserbeständigkeit</dt>
<dd>IP 68</dd>
</div>
<div>
<dt>SOS-Taste</dt>
<dd>...</dd>
</div>
...
</dl>Accompanying Files
Observation Details
Emphasis is solely conveyed by color (magenta)
<b>used for emphasis
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>
Observation Details
Some text content is written in a way, assistive technology has problems to announce it correctly. I will list fixes for some issues in the remediation notes.
Remediation Notes
"SOS-Knopf" is announced "Schosch-Knopf" (same for SOS-Kontakte, SOS-...); removing the hyphen makes the screen reader announce it as intended → "SOS Knopf", "SOS ..."
"x" in "Abmessungen" or "Auflösung" (Technische Daten) – e.g. "45,2 x 14,9 mm" (multiple occurrences found) is announced as letter X; use appropriate multiply symbol → "45,2 × 14,9 mm"
Time frames "36-48 Stunden" (and other "X bis Y") – "bis" is not announced in default screen reader settings; use word "bis" ideally to ensure default settings announce it as well → "36 bis 48 Stunden"
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Die Apple Watch ist für alle da. Auch wenn Sie noch kein iPhone haben.
h2 Vorteile für Ihre Kids
h2 Vorteile für die Erwachsenen
h2 Ihre Vorteile mit Smart Connect M
h2 Jetzt Apple Watch SE mit Smart Connect M bestellen
h2 Unser Tipp für Mobilfunkkunden
h2 Weitere Angebote für Ihre Apple Watch
h2 Häufig gestellte Fragen zur Apple Watch für Kinder
h3 Was sind die Vorteile der Apple Watch für Kinder?
h3 Gibt es einen Unterschied zwischen ...
h3 Welcher Telekom Tarif eignet sich für die Apple Watch für Kinder?The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Apple Watch für Kinder
h2 Immer in Verbindung mit der Apple Watch und Smart Connect M
h3 Vorteile für Ihre Kids
h2 Sorgenfreier dank der Apple Watch für Kinder
h3 Vorteile für die Erwachsenen
h2 Passend für Apple Watch Nutzer
h3 Ihre Vorteile mit Smart Connect M
h2 Jetzt Apple Watch SE mit Smart Connect M bestellen
h2 Unser Tipp für Mobilfunkkunden
h2 Die Apple Watch für Kinder – auch für alle
h3 Weitere Angebote für Ihre Apple Watch
h2 Häufig gestellte Fragen zur Apple Watch für KinderObservations for heading structure:
Visual main heading not
<h1>; not even any heading at allHeading eyebrows use separate heading elements
FAQ items do not use headings
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
<dl> element used for non-list content in FAQ accordion.
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Wir bringen zusammen, was zusammengehört
h2 iPhone mit der Telekom: Momente perfekt festhalten. Und superschnell teilen.
h3 Fortschrittliche Kamera – Das iPhone macht unglaubliche Fotos und Videos.
h3 Batterie – Eine Batterie, die den ganzen Tag mithält.
h3 Auflösung – Retina HD Display. Scharf und hell, mit fantastischen Farben.
h3 Leistung – Die volle Power ultraschneller Chips.
h3 5G Netz – Mit mehr Speed aufs nächste Level.
h2 Finden Sie jetzt Ihr neues iPhone bei der Telekom
h3 iPhone 16 Pro Max. Übernimm die Kamerasteuerung.
h3 ...
h2 Ein ganzes Netzwerk eingebauter Sicherheitsfeatures.
h3 App Tracking Transparenz – Ohne Erlaubnis dürfen Apps keine Aktivitäten tracken.
h3 Face ID – Face ID funktioniert ohne ein Selfie zu speichern.
h3 Mehr Sicherheit mit 5G – Bewahren Sie Ihre persönlichen Daten sicher auf, wo immer Sie sind.
h3 Fotos – Selbst entscheiden, wer was auf der Fotos App sehen kann.
h2 Einfach das iPhone bei der Telekom finden, das am besten passt
h3 Apple iPhone 16
h3 Apple iPhone 16 Pro
h3 Apple iPhone 16 Plus
h3 Apple iPhone 16 Pro Max
h2 Immer in Verbindung. Und besser für die Umwelt.
h3 Rohstoffe – Apple setzt sich ein für 100% recycelte oder erneuerbare Materialien.
h3 Erneuerbare Energien – Telekom 5G läuft zu 100 % mit erneuerbaren Energien.
h3 Green Magenta – Grüne und nachhaltige Produkte und Initiativen.
h3 Langlebigkeit – Für alle, die ein Smartphone wollen, das lange hält – das iPhone.
h3 Handyankauf
h4 Welches Smartphone wollen Sie verkaufen?
h4 IMEI-Nummer Ihres ...
h4 In welchem Zustand ist Ihr ...
h4 Leider können wir Ihr Smartphone nicht ankaufen
h4 Zusammenfassung
h4 Jetzt Ankaufsbonus erhalten
h4 Ankaufsanfrage abschließen
h5 Ihre Kontaktdaten
h5 Ihre Kontodaten
h5 Ankaufsanfrage
h3 Die iPhone Modelle entdecken – Welches iPhone ist das richtige?
h2 Häufig gestellte Fragen zum iPhone bei der Telekom
h3 Was kostet ein iPhone bei Vertragsverlängerung bei der Telekom?
h3 Wie kann ich auf ein neueres iPhone Modell bei der Telekom wechseln?
h3 Welcher SIM-Kartentyp der Telekom passt in das neueste iPhone?
h3 Kann ich mein altes iPhone bei der Telekom in Zahlung geben?The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 iPhone mit der Telekom: Momente perfekt festhalten. Und superschnell teilen.
h2 Das iPhone macht unglaubliche Fotos und Videos.
h2 Eine Batterie, die den ganzen Tag mithält.
h2 Retina HD Display. Scharf und hell, mit fantastischen Farben.
h2 Die volle Power ultraschneller Chips.
h2 Mit mehr Speed aufs nächste Level.
h2 Finden Sie jetzt Ihr neues iPhone bei der Telekom
h3 iPhone 16 Pro Max. Übernimm die Kamerasteuerung.
h2 Ein ganzes Netzwerk eingebauter Sicherheitsfeatures.
h3 Ohne Erlaubnis dürfen Apps keine Aktivitäten tracken.
h3 Face ID funktioniert ohne ein Selfie zu speichern.
h3 Bewahren Sie Ihre persönlichen Daten sicher auf, wo immer Sie sind.
h3 Selbst entscheiden, wer was auf der Fotos App sehen kann.
h2 Einfach das iPhone bei der Telekom finden, das am besten passt
h2 Immer in Verbindung. Und besser für die Umwelt.
h3 Telekom 5G läuft zu 100 % mit erneuerbaren Energien.
h3 Grüne und nachhaltige Produkte und Initiativen.
h3 Für alle, die ein Smartphone wollen, das lange hält – das iPhone.
<!-- HANDYANKAUF FORM WITH STEPS -->
h2 Handyankauf
h2 Welches Smartphonewollen Sie verkaufen?
h3 Geben Sie den Namen Ihres Smartphones ein und wählen Sie es aus der Liste aus.
h2 IMEI-Nummer Ihres ... für Ihren Ankauf
h4 Basierend auf Ihrer Auswahl haben wir einen geschätzten Ankaufswert ermittelt: ... € Für die genaue Preisermittlung und den Ankauf Ihres Geräts benötigen wir zusätzlich die IMEI-Nummer Ihres Smartphones.
h2 In welchem Zustand ist Ihr ...?
h4 Bitte beantworten Sie vier kurze Fragen, damit wir ermitteln können, ob wir Ihr Gerät ankaufen und um Ihnen ein vorläufiges Angebot machen zu können.
h4 Lässt sich das Handy einschalten?
h4 Ist das Handy frei von erheblichen Schäden und/oder sichtbaren Flüssigkeitsschäden?
h4 Verfügt das Handy über ein funktionstüchtiges Display, das keine Risse oder andere Schäden aufweist?
h4 Ist die Rückseite des Handys intakt und frei von Rissen?
(h2 Leider können wir Ihr Smartphone nicht ankaufen)
h2 Zusammenfassung
h4 Basierend auf Ihren Angaben erhalten Sie für Ihr... bis zu:
h2 Jetzt Ankaufsbonus erhalten
h4 Wenn Sie ein Neugerät gekauft haben, für das die Telekom einen Ankaufsbonus bietet, geben Sie die IMEI des erworbenen Neugerätes ein. Oder tippen Sie hier einen Aktionscode ein.
h2 Ankaufsanfrage abschließen
h4 Die Gesamtsumme für Ihr ... (ggf. mit einem Ankaufsbonus) beträgt bis zu:
h4 Um Ihre Anfrage für den Ankauf Ihres ... abzuschließen, benötigen wir Ihre persönlichen Daten (bitte keine Packstation als Absender verwenden). Bitte nennen Sie uns zudem noch das Bankkonto, auf das wir den Ankaufswert und ggf. Ankaufsbonus nach erfolgreicher Prüfung Ihres Gerätes überweisen können.
h3 Ihre Kontaktdaten
h3 Ihre Kontodaten
h3 Ankaufsanfrage
h4 Bitte senden Sie uns Ihr ... innerhalb von 21 Tagen zu. Sobald dieses in unserem Logistikzentrum eingetroffen ist und der Zustand des Gerätes den Angaben entspricht, kontaktieren wir Sie mit dem ermittelten Ankaufspreis von bis zu ... € und schließen den Ankauf ab.
<!-- END OF FORM -->
h2 Häufig gestellte Fragen zum iPhone bei der Telekom
h3 Was kostet ein iPhone bei Vertragsverlängerung bei der Telekom?
h3 Wie kann ich auf ein neueres iPhone Modell bei der Telekom wechseln?
h3 Welcher SIM-Kartentyp der Telekom passt in das neueste iPhone?
h3 Kann ich mein altes iPhone bei der Telekom in Zahlung geben?Remediation Notes
No heading levels must be skipped
No non-heading content must use heading elements
All heading content must use heading elements
Proper grouping of content into heading sections is mandatory
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
"Handyankauf" form step headings use control characters for line breaks.
<h2 class="...">
"IMEI-Nummer "
"Ihres"
"iPhone 11"
" mit "
"128"
"GB "
" für Ihren Ankauf "
</h2>Character codes are 000D, Carriage Return, \r & 000A, Line Feed, \n.
A screen reader announces this as follows:
Heading
IMEI-Nummer Ihres iPhone 11 mit 128GB für Ihren Ankauf
8 Items
You are currently on a Heading level 2
IMEI-Nummer, level 1
Ihres, level 1
Leerzeichen, level 1
iPhone 11, level 1
mit, level 1
128, level 1
GB, level 1
für Ihren Ankauf, level 1
End of Heading Level 2Subsequent heading levels (e.g. right now the whole body copy text below this heading level 2 in step 2 is a heading with 9 items, including announced space characters) will further worsen the announcements as levels are going deeper.
Remediation Notes
Ensure no special control characters are used in text content. Paragraphs must always use <p> elements and manual line breaks must be avoided unless necessary (e.g. in poetry).
Ensure only actual heading content uses heading elements.
Observation Details
What arguably is list content:
Das iPhone macht unglaubliche Fotos und Videos.
Eine Batterie, die den ganzen Tag mithält.
Retina HD Display. Scharf und hell, mit fantastischen Farben.
Die volle Power ultraschneller Chips.
Mit mehr Speed aufs nächste Level.
and
Ohne Erlaubnis dürfen Apps keine Aktivitäten tracken.
Face ID funktioniert ohne ein Selfie zu speichern.
Bewahren Sie Ihre persönlichen Daten sicher auf, wo immer Sie sind.
Selbst entscheiden, wer was auf der Fotos App sehen kann.
and
Telekom 5G läuft zu 100 % mit erneuerbaren Energien.
Grüne und nachhaltige Produkte und Initiativen.
Für alle, die ein Smartphone wollen, das lange hält – das iPhone.
is using heading elements instead.
Remediation Notes
Use semantic list for all list content. When a heading element provides all information on its own and does not introduce any more content, it is likely to be list content instead. Given the page structure, there are lots of "cards" that only have a heading element.
Ensure readability by grouping these cards under accurate heading elements and remove unused heading elements on the cards themselves.
A structure could look like:
h2 iPhone mit der Telekom. Die wichtigsten Funktionen im Überblick
ul
li Fortschrittliche Kameras – Das iPhone macht unglaubliche Fotos und Videos.
li Batterie – Eine Batterie, die den ganzen Tag mithält.
...
h2 Ein ganzes Netzwerk eingebauter Sicherheitsfeatures
ul
li App Tracking Transparenz – Ohne Erlaubnis dürfen Apps keine Aktivitäten tracken.
...
h2 Immer in Verbindung und dabei besser für die Umwelt
ul
li Rohstoffe – Apple setzt sich ein für 100 % recycelte oder erneuerbare Materialien.
li Erneuerbare Energien – Telekom 5G läuft zu 100 % mit erneuerbaren Energien.
li Green Magenta – Grüne und nachhaltige Produkte und Initiativen.
li Langlebigkeit – Für alle, die ein Smartphone wollen, das lange hält – das iPhone.Accompanying Files
Observation Details
List in Handyankauf form does not use semantic HTML list element.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
Landmarks like named sections / regions should only be used rarely and for content that is not otherwise structured already. When a proper heading structure is in place, grouping the same content into a region as well does not provide any benefits navigating page structure.
As regions and headings both are announced by assistive technology, it can make navigating a page sequentially less pleasant to access, as it takes multiple clicks to move between items and content announcements are duplicated.
Remediation Notes
Ensure, using a proper heading structure to structure page content. Doing so, there is no need for manually adding additional landmarks to the page to further structure the content within the main landmark.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Noch nie war wechseln so attraktiv
h2 Wählen Sie Ihren Smartphone-Tarif
h3 20 GB Datenvolumen
h3 30 GB Datenvolumen
h3 50 GB Datenvolumen
h3 100 GB Datenvolumen
h3 Unbegrenzt
h2 Jetzt zum Testsieger wechseln
h2 In unseren Handytarifen inklusive
h3 Telefon- und SMS-Flat
h3 Größtes 5G-Netz
h3 HotSpot-Flatrate
h3 EU-Roaming
h2 Gute Gründe jetzt einzusteigen
h3 Unbegrenztes Datenvolumen
h3 MagentaEINS
h3 Vorteile in der MeinMagenta App
h3 Optional mit Wunschgerät
h3 Rufnummernmitnahme
h2 Weitere Tarife der Telekom entdecken
h3 MagentaMobil Young
h3 Speedbox-Tarife
h2 Häufig gestellte Fragen zu den Handytarifen
h3 ...
<!-- sidebar -->
h2 Vorteile im Überblick
h3 Unbegrenztes Datenvolumen
h3 MagentaEINS VorteilThe programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Wählen Sie Ihren Smartphone-Tarif
h2 Change number of Karten für Erwachsene. Values between 1 and 6 are valid.
h2 Jetzt zum Testsieger wechseln
h2 In unseren Handytarifen inklusive
h3 Telefon- und SMS-Flat
h3 Größtes 5G-Netz *
h3 HotSpot-Flatrate
h3 EU-Roaming
h2 Gute Gründe jetzt einzusteigen
h3 Gute Gründe jetzt einzusteigen
h3 Unbegrenztes Datenvolumen
h3 MagentaEINS
h3 Vorteile in der MeinMagenta App
h3 Optional mit Wunschgerät
h3 Rufnummernmitnahme
h2 Weitere Tarife der Telekom entdecken
h3 MagentaMobil Young
h3 Speedbox-Tarife
h2 Häufig gestellte Fragen zu den Handytarifen
h3 Vorteile im Überblick
h4 Unbegrenztes Datenvolumen
h4 MagentaEINS VorteilObservations for heading structure:
Visual main heading in main stage "Noch nie war wechseln so attraktiv" is not using main heading
<h1>element or any other HTML heading element for that matterArguably most important content of Smartphone-Tarife page –the tariff cards– do not use heading elements
Hidden headings found
Change number of Karten für Erwachsene. Values between 1 and 6 are valid.
Gute Gründe jetzt einzusteigen (
<h3>), duplicating preceding<h2>
Sections "In unseren Handytarifen inklusive" and "Gute Gründe jetzt einzusteigen" use subsequent headings for shot form content that might better be defined as list content
Sections "Jetzt zum Testsieger wechseln", "In unseren Handytarifen inklusive", "Gute Gründe jetzt einzusteigen" could be grouped as "Vorteile" to more broadly structure page content
Sidebar content is not grouped via
<h2>heading and as such might be seen as content of "Häufig gestellte Fragen zu den Handytarifen"
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
FAQ section:
Empty paragraph after section heading
Improper use of line breaks in FAQ item "Worauf sollte ich bei meinem neuen Handytarif achten?"
Table content in FAQ item "Was verbraucht am meisten Datenvolumen?" displayed by use of non breaking spaces:
<li><strong>Serienstreaming</strong> ... 1 Stunde</li>
"Tarifdetails" / "Jetzt zur Telekom wechseln" dialog windows:
Extensive use of line break elements
Use of
<strong>elements for heading contentInfo icon dialog window
Use of line breaks
Use of
<b>to emphasize text contentUse of emphasis for heading content
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
"PlusKarte" dialog window uses headings:
h3 Jetzt mit der PlusKarte unbegrenztes Datenvolumen sichern:
h5 Die PlusKarte ist eine zusätzliche Karte zu einem aktuellen MagentaMobil Vertrag mit eigener Rufnummer und eigenem Datenvolumen in derselben Höhe wie das der Hauptkarte. So einfach geht’s: MagentaMobil Hauptkarte aussuchen MagentaMobil M oder L auswählen PlusKarte für 19,95 € hinzufügen Entweder direkt hier, indem Sie oben mehr als eine Karte auswählen, oder im Warenkorb Unbegrenzt surfen Mit ausgewählten Karten deutschlandweit unbegrenztes Datenvolumen nutzen. Im Nachgang können noch weitere PlusKarten+, PlusKarten Kids und Teens sowie PlusKarten Data dazugebucht werden, die ebenfalls vom unbegrenzten Datenvolumen profitieren.Observations:
Skipped heading level
Heading extremely long
Heading includes whole body copy
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h2 Ich bin bereits bei der Telekom
h1 Apple iPad Air 11" (2025) M3
h2 Farbe
h2 Speichergröße
h3 Gesamtpreis des Geräts
h2 Produkthinweise
h2 Geld sparen mit dem Handyankauf
h2 Tarif- und Gerätepreis
h2 Produktinformationen
h3 Netzteil
h3 Herstellerangaben
h4 Kontaktdaten
h4 Produktsicherheit
h2 Spezifikationen
h3 Hardware und Schnittstellen
h3 Netz-Standards
h3 Farben
h3 Speichergrößen
h3 Marke
h3 Betriebssystem
... <!-- Image content -->
h2 Lieferumfang
h2 Weitere Informationen
<!-- sidebar -->
h2 Vorteile im Überblick
h3 Handyankauf
h3 MagentaEINS Vorteil
h2 Ich möchte...The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Apple iPad Air 11" (2025) M3
h2
h3 Spezifikationen
h2 Spezifikationen
h3 Vorteile im Überblick
h4 Handyankauf
h4 MagentaEINS VorteilObservations for heading structure:
Most visually presented heading content does not use HTML heading elements
Empty heading level 2 found
Duplicate heading "Spezifikationen" with two different heading levels
"Vorteile im Überblick" heading of sidebar is logically placed as content of "Spezifikationen"
Text content in images uses visual presentation like heading structure as well which is not at all reflected in code
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
What is arguably list content, is not using semantic list elements. See
check mark list in "Tarif- und Gerätepreis" section
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
The visually presented heading structure of "Weitere Details" dialog window does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Produkthinweise
h2 Apple iPad Air 11" (2025) M3
h2 Hersteller
h2 SicherheitshinweiseThe programmatically determinable heading structure, using HTML heading elements is as follows:
-Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
The visually presented heading structure of "Ankaufsbonus" footnote dialog window does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Ankaufsbonus – Aktionsübersicht
h2 Handyankauf allgemeine Bedingungen
h2 Ankaufsbonus für Google Pixel 9a
...The programmatically determinable heading structure, using HTML heading elements is as follows:
-Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
The visually presented heading structure of "Handyankauf" dialog window does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Handyankauf
...The programmatically determinable heading structure, using HTML heading elements is as follows:
-No heading elements used to structure content.
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
The visually presented heading structure of "Tarif ändern" dialog window does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Wählen Sie Ihren Datentarif
h2 5 GB Datenvolumen
...
h2 GesamtpreisThe programmatically determinable heading structure, using HTML heading elements is as follows:
-Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
The visually presented heading structure of "Preisübersicht" dialog window does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Preisübersicht
h2 Einmalige Zahlung
h2 Monatliche ZahlungThe programmatically determinable heading structure, using HTML heading elements is as follows:
h4 Einmalige Zahlung
h4 Monatliche ZahlungObservations:
Main heading in dialog window does not use HTML heading element
In context of dialog window, three heading levels are skipped for the HTML heading elements present
The headings level 4 are logically content under heading level 3 "Vorteile im Überblick"
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
The visually presented heading structure of sidebar info icon dialog windows does not match the use of semantic HTML heading elements. The visually presented structure is as follows: (respectively for "Handyankauf" and "MagentaEINS Vorteil" dialog windows)
h1 Mehr Infos zu Ankaufswert & Ankaufsbonus
----
h1 MagentaEINS Vorteil
h2 VoraussetzungThe programmatically determinable heading structure, using HTML heading elements is as follows:
h3 Mehr Infos zu Ankaufswert & Ankaufsbonus
h5 Der vorläufige Ankaufswert für Ihr Gerät wird bestimmt durch die Angaben, die Sie zu dem Modell und dem Zustand machen und gilt für 21 Tage. Der Wert wird erneut geprüft, nachdem Sie das Gerät eingeschickt haben. Nach positiver Prüfung wird Ihnen der Ankaufswert innerhalb weniger Tage auf Ihr Konto ausgezahlt. Profitieren Sie von unserem attraktiven Ankaufsbonus! Je nachdem, für welches neue Gerät Sie sich entscheiden, können Sie sich zum Ankaufswert einen zusätzlichen Ankaufsbonus sichern. Der Bonus wird Ihnen nach erfolgreichem Ankauf Ihres Gerätes und dem Erhalt des neuen Handys direkt auf Ihr Konto überwiesen.
----
h3 MagentaEINS Vorteil
h5 Voraussetzung Voraussetzung für MagentaEINS ist das gleichzeitige Bestehen eines Mobilfunklaufzeitvertrags mit einem monatlichen Grundpreis ab 29,95 €, abgeschlossen ab dem 22.05.2013 und eines IP-Breitbandvertrags, abgeschlossen ab dem 01.06.2015, mit einem monatlichen Grundpreis ab 29,95 €. Je Mobilfunk- und Festnetz-Vertrag ist nur ein MagentaEINS Vorteil möglich. Endet die Berechtigung für MagentaEINS durch Beendigung des Festnetz- oder Mobilfunkvertrags, entfällt der Rabatt und alle Vorteilsoptionen werden gelöscht.Observations:
Skipped two heading levels for main heading
Skipped one heading level
Heading element used for body content
In MagentaEINS Vorteil dialog window, a heading level 4 "Voraussetzung" is nested inside the heading level 5
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
"Herstellerangaben" section
"Weitere Details" dialog window
Footnote dialog window
Info icon collapsible in sidebar & "Tarifdetails" dialog window in "Tarif ändern" dialog window
line break elements
Non breaking spaces
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
The visually presented heading structure of "Tarifdetails" dialog window in "Tarif ändern" dialog window does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 MagentaMobil Data S mit Tablet
h2 Internet
h2 Inklusivleistungen
h2 Zubuchbare Datenpässe
h2 Tarife ohne MindestlaufzeitThe programmatically determinable heading structure, using HTML heading elements is as follows:
h2 MagentaMobil Data S mit TabletObservations:
Heading content uses
<p><strong></strong></p>
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
List content in section "Spezifikationen" uses generic HTML element instead of semantic list element.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
What is arguably list content, is not using semantic list elements. See
check mark list in "Tarif- und Gerätepreis" section
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
"Herstellerangaben" section
"Weitere Details" dialog window
Footnote dialog window
Info icon collapsible in sidebar & "Tarifdetails" dialog window in "Tarif ändern" dialog window
line break elements
Non breaking spaces
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
List content in section "Spezifikationen" uses generic HTML element instead of semantic list element.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Empty HTML paragraph element in FAQ section after FAQ heading.
Side note: No paragraph element used in FAQ item "ie kann ich mir die Freiminuten meines Prepaid-Tarifs anzeigen lassen?" Also, missing "W" in FAQ item heading
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Description list used for accordion (FAQ)
Remediation Notes
Ensure, definition lists are only used for defining terms (<dt>). Refer to BFIT-Bund Handreichung "Accessible design of user interface elements – Accordion" for technical requirements of accessibly implementing an accordion component.
Accompanying Files
Observation Details
Ordered lists are used for list content where the order is of importance. This can be step-to-step guides or breadcrumb navigation item lists. Arguably, in list content "Informationen zur Safety Watch zum Drucken:", the order is of no importance.
Accompanying Files
Observation Details
HTML element <b> is used for text emphasis in badge text content.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>
Alternatively, CSS can be used to style the text content.
Accompanying Files
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Gemeinsam sicher fühlen – Die Telefonuhr mit SOS-Funktion
h2 Was ist die Safety Watch?
h3 Informationen zur Safety Watch zum Drucken
h1 Die Telefonuhr mit SOS-Funktion für Senioren
h2 Telekom Live Experience für die Safety Watch
h2 Einfach in Kontakt bleiben – Smartwatch mit Telefonfunktion
h2 Notfallknopf – SOS-Uhr mit Notfallknopf
h2 Schnelle Hilfe im Notfall – Smartwatch mit automatischer Sturzerkennung
h2 Alles unter Kontrolle – Pulsmesser
h2 Fit im Alltag – Schrittzähler
h2 Sicherheit auf einen Blick – GPS-Tracking und sichere Bereiche festlegen
h2 Johanniter – Professionelle Hilfe auf Knopfdruck – Mobiler Hausnotruf mit JohanniterCall
h2 2 Farben nach Ihrem Geschmack
h2 Technische Daten
h2 Kostenlose App – TCL Connect App herunterladen
h2 So einfach geht's
h3 Hinweis
h3 Nicht nur für Telekom Kunden
h2 Safety Watch TCL MT43AX
h3 Safety Watch & Doro Watch im Vergleich
h3 Fragen & Antworten zur Safety Watch
h4 <!-- FAQ item headings -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Die Telefonuhr mit SOS-Funktion für Senioren
h2 Telekom Live Experience für die Safety Watch
h2 Smartwatch mit Telefonfunktion
h2 SOS-Uhr mit Notfallknopf
h2 Smartwatch mit automatischer Sturzerkennung
h2 Pulsmesser
h2 Schrittzähler
h2 GPS-Tracking und sichere Bereiche festlegen
h2 Mobiler Hausnotruf mit JohanniterCall
h2 2 Farben nach Ihrem Geschmack
h2 Technische Daten
h3 Wasserdicht
h3 Akkulaufzeit
h3 SOS-Taste
h3 Funktioniert in
h3 Speicher
h3 Geeignet für
h3 Gewicht
h3 Abmessungen (mm)
h2 TCL Connect App herunterladen
h2 So einfach geht's
h2 Safety Watch TCL MT43AX
h2 SAFETY WATCH & DORO WATCH IM VERGLEICH
h2 Fragen & Antworten zur Safety Watch
h3 <!-- FAQ item headings -->Observations:
Main heading duplicated by "Gemeinsam sicher fühlen" and "Die Telefonuhr mit SOS-Funktion für Senioren"
Heading content "Gemeinsam sicher fühlen" and "Was ist die Safety Watch?" does not use HTML heading element
Heading content "Informationen zur Safety Watch zum Drucken", "Hinweis", "Nicht nur für Telekom Kunden" uses generic emphasis (
<strong>) instead of heading element"Technische Daten" uses heading elements level 3 for what arguably is simple list content
Eyebrows of
<h2>headings are not included in heading element, thus logically ordering it under preceding headingsHeading "Safety Watch TCL MT43AX" visually presented as higher level heading as the following "SAFETY WATCH & DORO WATCH IM VERGLEICH" and "Fragen & Antworten zur Safety Watch" but uses same heading level (see attached screenshot)
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Ensure, not using emphasis elements, like <strong> to display heading content
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Data table "Safety Watch & Doro Watch im Vergleich" does not use semantic HTML table structure, making it inaccessible to assistive technology.
The current structure has the order of
Column 2 (Safety Watch)
Column 3 (Doro Watch)
Column 1 (Row headings)
Remediation Notes
Ensure proper use of semantic HTML table structure, including proper heading labels for columns and rows.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list"class="col-item-first"also is a list item with no visible content
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
See attached screenshots for red dots, blue dots and empty paragraph tags.
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Text emphasis with
<b>
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
See attached screenshots for:
Empty paragraphs
Line breaks (red dot)
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list"class="LinkList__links__..."(see attached screenshot)
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
Main heading "Telekom Mobilfunk-Netzausbau" uses
<h1><strong></strong></h1>Heading "Warum Mobilfunk von der Telekom? Ganz einfach!" uses
<h2><strong></strong></h2>
As the whole visible text content is wrapped in emphasis, the emphasis itself becomes useless. For the heading level 2, additionally the actual emphasis
Remediation Notes
Ensure, using emphasis only to emphasize in comparison to surrounding content. In this case, styling should be done by CSS instead of using a semantic HTML element.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
There are numerous instances of these failures. See attached screenshots for line breaks, non-breaking spaces, empty semantic elements, etc.
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Accompanying Files
Observation Details
Step by step guide in "Neues Android-Smartphone. Alles bleibt beim Alten." arguably is list content but does not use list element.
Remediation Notes
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
<!-- Hero carousel -->
h2 Sternstunde der Fotografie
h2 Das neue Samsung im besten 5G-Netz
h2 Google on Android
h2 Das neue Google Pixel 9 Pro mit Gemini
h2 Deine Lieblings-Apps. Auf deinem Android-Handy.
h2 Dein Android-Handy rundum geschützt
h2 Du entscheidest, was zu dir passt
h2 Mehr erleben mit Google
h3 Von Hand voll zu Hand frei
h3 Mehr Verbindung erleben
h3 Entfalten und neue Welten entdecken - mit Google
h3 „Hey Google, mach ein Selfie“
h2 Android-Handys völlig neu erleben - mit Google AI
h3 Gemini Live – Chatte mit Gemini
h3 Gemini-Erweiterungen – Greife mit Gemini auf Gmail, Maps, Tasks und mehr zu
h3 Schneller und smarter Zugriff – Dein integrierter KI-Assistent von Google
h3 Circle to Search – Die neue Art zu suchen
h3 Magische Textvorschläge – Ganz einfach die richtigen Worte finden
h3 Fotomoji – Erstelle deine eigenen Emojis
h3 Beste Aufnahmen – Gruppenbilder, auf denen sich alle gefallen
h2 Powered by Android
h2 Pixel-Geräte
h2 Samsung-Geräte
h2 Neues Android-Smartphone. Alles bleibt beim Alten.
h2 Finde das Android-Gerät, das am besten zu dir passt.
h2 Häufig gestellte Fragen zu Android Handys
h3 Was ist ein Smartphone mit Android?
<!-- FAQ ITEMS -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Deine Lieblings-Apps. Auf deinem Android-Handy.
h2 Dein Android-Handy rundum geschützt
h2 Du entscheidest, was zu dir passt
h2 Android-Handys völlig neu erleben - mit Google AI
h3 Chatte mit Gemini
h3 Greife mit Gemini auf Gmail, Maps, Tasks und mehr zu
h3 Dein integrierter KI-Assistent von Google
h3 Die neue Art zu suchen
h3 Ganz einfach die richtigen Worte finden
h3 Erstelle deine eigenen Emojis
h3 Gruppenbilder, auf denen sich alle gefallen
h2 Neues Android-Smartphone. Alles bleibt beim Alten.
h2 Finde das Android-Gerät, das am besten zu dir passt.
h2 Häufig gestellte Fragen zu Android Handys
h3 Was ist ein Smartphone mit Android?
h3 Was sind die Vorteile von Android?
h3 Können Android-Handys ohne Google Konto genutzt werden?
h3 Was ist der Unterschied zwischen iPhone und Android?Observations for heading structure:
No visual main heading identifiable;
<h1>tag styled the same as level 2 headingsMain heading is "Deine Lieblings-Apps. Auf deinem Android-Handy.", while page title is "Android & Telekom: Handys, Tablets und mehr | Telekom"
Hero carousel headings do not use heading elements
Inconsistencies in use of heading elements and stylings; visually presented structure is barely reflected in code structure
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Build out the base outline / structure of the page content without styling by use of semantic HTML elements and rarely (or better, not at all) change visual presentation too much. If visual presentation is changed, ensure heading structure is still presented visually. Base rules to follow:
Font size usually decrease with lower heading levels
Font size of body copy usually is smaller than of heading elements
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements.
Heading "Rechtliche Hinweise" is sub heading of FAQ list but is represented as new stand-alone heading
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
Emphasis, using <b> instead of <strong>.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>
Accompanying Files
Observation Details
What is arguably list content does not use semantic HTML list elements.
"Und so funktioniert es" step by step guide → ordered list
Paragraph content in section "Weitere for Friends Angebote", using hyphens instead of list elements
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Telekom for Friends
h2 Holt euch jetzt Unlimited
h2 Und so funktioniert es
h2 PlusKarten für weitere Personen
h3 Je mehr, desto günstiger
h3 Die neuen PlusKarten der Telekom in der Übersicht
h3 Unbegrenztes Datenvolumen
h3 Volle Flexibilität
h3 Bei allen Karten inklusive
h3 Sie haben bereits eine aktuelle for Friends Hauptkarte und wollen Zusatzkarten bestellen?
h2 Weitere for Friends Angebote
h3 MagentaMobil Data for Friends
h3 Prepaid: Mehr Datenvolumen, gleicher Preis
h3 Speedbox for Friends
h3 Smart Connect for Friends
h2 Sie sind bereits Kunde?
h3 For Friends Vertrag verlängern
h3 Vertrag in for Friends umstellen
h2 Häufig gestellte Fragen
h3 ...The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Telekom for Friends
h2 Exklusiver Sparvorteil für Freunde von Telekom Mitarbeitern bis zu 30 % auf den monatlichen Grundpreis
h2 Und so funktioniert es
h3 Hauptkarte wählen
h3 For Friends Vorteil sichern
h3 LogIn erstellen
h3 Fertig!
h2 PlusKarten für weitere Personen
h3 Einfach zum Hauptvertrag hinzufügen
h2 Je mehr, desto günstiger Fußnoten anzeigen
h2 Die neuen PlusKarten der Telekom in der Übersicht
h2 Unbegrenztes Datenvolumen
h2 Volle Flexibilität
h2 Bei allen Karten inklusive
h3 Telefon- und SMS-Flatrate
h3 Größtes 5G-Netz Fußnoten anzeigen
h3 HotSpot-Flatrate
h3 EU-Roaming
h2 Sie haben bereits eine aktuelle for Friends Hauptkarte und wollen Zusatzkarten bestellen?
h3 Einfach einloggen und Zusatzkarten für Ihre Familie und Freunde bestellen
h2 Weitere for Friends Angebote
h3 MagentaMobil Data for Friends
h3 Prepaid: Mehr Datenvolumen, gleicher Preis
h3 Speedbox for Friends
h3 Smart Connect for Friends
h2 Sie sind bereits Kunde?
h3 For Friends Vertrag verlängern
h3 Vertrag in for Friends umstellen
h2 Häufig gestellte Fragen
h3 ...Observations for heading structure:
Content, visually presented as heading, does not use heading element - "Holt euch jetzt Unlimited"
Non-heading content (heading sublines) uses heading element
List content "Und so funktioniert es" uses heading elements
List content "Bei allen Karten inklusive" uses heading elements
Heading "PlusKarten für weitere Personen" has no content (see 2.4.6 Headings and Labels) and subsequent headings therefore are using same hierarchy heading levels instead of being one level lower
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
What is arguably list content, is not using semantic list elements. See details in comparison table. Ideally, all list content, e.g. in "Kapazität" it would be "128 GB, 256 GB, 512 GB", is presented and marked up as a list.
Remediation Notes
This observation should be remediated after or together with the observations about the missing data table (1.3.1 Info and Relationships). The current observation would then be remediated for each table cell that includes list content. The easiest approach would be to use unordered list for every list content. For the example cells "Kapazität" and "Farben" this could look like this:
...
<td>
<ul>
<li>128 GB</li>
<li>256 GB</li>
<li>512 GB</li>
</ul>
</td>
...
<td>
<ul>
<li><span class="color-circle"></span><span>Weiß</span></li>
<li><span class="color-circle"></span><span>Blau</span></li>
<li><span class="color-circle"></span><span>Violett</span></li>
<li><span class="color-circle"></span><span>Gold</span></li>
</ul>
</td>
...The color name should also be visible, as the color is not only important to users of assistive technology but also e.g. to users with color weakness or color blindness who not necessarily use assistive technology.
Ensure to carefully check all table content for list content. This includes, display information, apple pencil compatibility, etc. As a special case, in "Abmessungen", and potentially other cells, a <dl></dl> could also be used. Evaluate use of the best list type per cell.
Observation Details
What is arguably list content, is not using semantic list elements. See details in comparison table. Ideally, all list content, e.g. in "Kapazität" it would be "128 GB, 256 GB, 512 GB", is presented and marked up as a list.
Remediation Notes
This observation should be remediated after or together with the observations about the missing data table (1.3.1 Info and Relationships). The current observation would then be remediated for each table cell that includes list content. The easiest approach would be to use unordered list for every list content. For example cells "Kapazität" and "Farben" this could look like this:
...
<td>
<ul>
<li>128 GB</li>
<li>256 GB</li>
<li>512 GB</li>
</ul>
</td>
...
<td>
<ul>
<li><span class="color-circle"></span><span>Weiß</span></li>
<li><span class="color-circle"></span><span>Blau</span></li>
<li><span class="color-circle"></span><span>Violett</span></li>
<li><span class="color-circle"></span><span>Gold</span></li>
</ul>
</td>
...The color name should also be visible, as the color is not only important to users of assistive technology but also e.g. to users with color weakness or color blindness who not necessarily use assistive technology.
Ensure to carefully check all table content for list content. This includes, display information, etc. As a special case, in "Abmessungen", and potentially other cells, a <dl></dl> could also be used. Evaluate use of the best list type per cell.
Accompanying Files
Observation Details
The comparison table with tabular content is not using the semantic HTML table element and as such cannot be accessed in a useful way via keyboard navigation and assistive technology. Each "section" inside the tabular data can only be navigated one column at a time. Navigation from row to row and column to column is important to understand complex tabular content.
Given. the example in the attached screenshot, there are three devices in comparison. Navigating this data by assistive technology, going to section "Kapazität", the content is simply announced as "128 GB, 256 GB, 512 GB, 128 GB, 256 GB, 512 GB, 128 GB, 256 GB, 512 GB". No hint on the compared devices' names is given.
Matching of cell data to the visually presented column heading (device name) is not possible without visual confirmation.
Remediation Notes
Ensure, all tabular data is using proper semantic HTML table elements.
The given data could be implemented in various ways. The most accessible would be the cumulation in a single data table as all data is connected to one device. For technical requirements please refer to BFIT-Bund Handreichung "Accessible design of user interface elements – Table". An example structure could look like this:
<table>
<caption>DEVICE TYPE Vergleich</caption>
<thead>
<tr>
<th><!-- DATA TYPE --></th>
<th scope="col">Device Name 1</th>
<th scope="col">Device Name 2</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">Kapazitäten</th>
<td>
<ul>
<li>128 GB</li>
<li>256 GB</li>
<li>512 GB</li>
</ul>
</td>
<td>
<ul>
<li>128 GB</li>
<li>256 GB</li>
</ul>
</td>
</tr>
<tr>
<th scope="row">Farben</th>
<td>
<ul>
...
</ul>
</td>
<td>
<ul>
...
</ul>
</td>
</tr>
...
</tbody>
</table>Accompanying Files
Observation Details
The comparison table with tabular content is not using the semantic HTML table element and as such cannot be accessed in a useful way via keyboard navigation and assistive technology. Each "section" inside the tabular data can only be navigated one column at a time. Navigation from row to row and column to column is important to understand complex tabular content.
Given. the example in the attached screenshot, there are three devices in comparison. Navigating this data by assistive technology, going to section "Kapazität", the content is simply announced as "128 GB, 256 GB, 512 GB, 128 GB, 256 GB, 512 GB, 128 GB, 256 GB, 512 GB". No hint on the compared devices' names is given.
Matching of cell data to the visually presented column heading (device name) is not possible without visual confirmation.
Remediation Notes
Ensure, all tabular data is using proper semantic HTML table elements.
The given data could be implemented in various ways. The most accessible would be the cumulation in a single data table as all data is connected to one device. For technical requirements please refer to BFIT-Bund Handreichung "Accessible design of user interface elements – Table". An example structure could look like this:
<table>
<caption>DEVICE TYPE Vergleich</caption>
<thead>
<tr>
<th><!-- DATA TYPE --></th>
<th scope="col">Device Name 1</th>
<th scope="col">Device Name 2</th>
</tr>
</thead>
<tbody>
<tr>
<th scope="row">Kapazitäten</th>
<td>
<ul>
<li>128 GB</li>
<li>256 GB</li>
<li>512 GB</li>
</ul>
</td>
<td>
<ul>
<li>128 GB</li>
<li>256 GB</li>
</ul>
</td>
</tr>
<tr>
<th scope="row">Farben</th>
<td>
<ul>
...
</ul>
</td>
<td>
<ul>
...
</ul>
</td>
</tr>
...
</tbody>
</table>Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 iPad Vergleich - Alle Modelle in der Übersicht
h2 Verschiedene Apple iPad Generationen im Vergleich: Entdecken Sie das Gerät, das Ihren Anforderungen entspricht
h2 iPad Vergleich
h3 DEVICE NAME
h4 Kapazität
h4 Farben
h4 Übersicht
h4 Display
h4 Abmessungen und Gewicht
h4 Chip
h4 Media engine
h4 Stromversorgung und Batterie
h4 Apple Pencil Kompatibilität
h4 iPad Keyboard Kompatibilität
h4 Kamera
h4 Videoaufnahme
h4 Frontkamera
h4 Audio
h4 Sichere Authentifizierung
h4 Apple Pay
h4 Siri
h4 Drahtlose Technologien
h4 SIM Karte
h4 Anschluss
h4 Sensoren
h3 <!-- OTHER DEVICES -->
h2 Übersicht verschiedener Apple iPad-Generationen: Entdecken Sie unsere Auswahl
h3 iPad, iPad Mini, iPad Air oder iPad Pro – Sie haben die Wahl
h3 Die iPad Pro-Modelle – wahre Allrounder für Intensiv-Nutzer und Kreativ-Schaffende
h2 Häufig gestellte Fragen zum Thema „iPad vergleichen“
h3 <!-- FAQ ITEMS -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 iPad Vergleich - Alle Modelle in der Übersicht
h2 Verschiedene Apple iPad Generationen im Vergleich: Entdecken Sie das Gerät, das Ihren Anforderungen entspricht
h2 iPad Vergleich
h2 Übersicht verschiedener Apple iPad-Generationen: Entdecken Sie unsere Auswahl
h2 iPad, iPad Mini, iPad Air oder iPad Pro – Sie haben die Wahl
h2 Die iPad Pro-Modelle – wahre Allrounder für Intensiv-Nutzer und Kreativ-Schaffende
h2 Häufig gestellte Fragen zum Thema „iPad vergleichen“
h3 Wo liegen die Vorteile der Performance von Apple iPads im Vergleich zu Modellen anderer Hersteller?
h3 Was ist Wi-Fi und Cellular beim iPad?
h3 Vergleich verschiedener Generationen: Wann kam welches iPad, iPad Mini, iPad Air und iPad Pro-Modell auf den Markt?
h3 Wie kann ich den Apple Pencil am iPad aufladen?
h3 Wie lange gibt es Updates für die iPads?Observations:
As heading presented text content in device comparison table is not marked up as headings; this becomes a non-issue, when the table is using semantic HTML table elements but is a failure of 1.3.1 Info and Relationships while they are visually represented as headings
Heading level 2 "Übersicht verschiedener Apple iPad-Generationen: Entdecken Sie unsere Auswahl" is followed by headings, visually distinguishable but using the same hierarchy level
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 iPhone vergleichen: Alle Modelle im Überblick
h2 Finden Sie das iPhone, das zu Ihnen passt
h2 iPhones im Überblick
h3 DEVICE NAME
h4 Kapazität
h4 Farben
<!-- OTHER CATEGORIES -->
h3 <!-- OTHER DEVICES -->
h2 iPhones vergleichen: Älteres Modell oder High End-Smartphone?
h3 Die iPhone 13-Serie – einfach großartig
h3 Das iPhone 14: leistungsstark und kompakt
h3 Die iPhone 15 - Serie: innovative Technik und elegantes Design
h3 Das iPhone 16: Die nächste Generation von Innovation und Stil
h3 Die iPad Pro-Modelle – wahre Allrounder für Intensiv-Nutzer und Kreativ-Schaffende
h2 Häufig gestellte Fragen zum Thema „iPad vergleichen“
h3 <!-- FAQ ITEMS -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 iPhone vergleichen: Alle Modelle im Überblick
h2 Finden Sie das iPhone, das zu Ihnen passt
h2 iPhones im Überblick
h2 iPhones vergleichen: Älteres Modell oder High End-Smartphone?
h2 Die iPhone 13-Serie – einfach großartig
h2 Das iPhone 14: leistungsstark und kompakt
h2 Die iPhone 15 - Serie: innovative Technik und elegantes Design
h2 Das iPhone 16: Die nächste Generation von Innovation und Stil
h2 Die iPad Pro-Modelle – wahre Allrounder für Intensiv-Nutzer und Kreativ-Schaffende
h2 Häufig gestellte Fragen zum Thema „iPad vergleichen“
h3 Wo liegen die Vorteile der Performance von Apple iPads im Vergleich zu Modellen anderer Hersteller?
h3 Was ist Wi-Fi und Cellular beim iPad?
h3 Vergleich verschiedener Generationen: Wann kam welches iPad, iPad Mini, iPad Air und iPad Pro-Modell auf den Markt?
h3 Wie kann ich den Apple Pencil am iPad aufladen?
h3 Wie lange gibt es Updates für die iPads?Observations:
As heading presented text content in device comparison table is not marked up as headings; this becomes a non-issue, when the table is using semantic HTML table elements but is a failure of 1.3.1 Info and Relationships while they are visually represented as headings
Heading level 2 "iPhones vergleichen: Älteres Modell oder High End-Smartphone?" is followed by headings, visually distinguishable but using the same hierarchy level
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Text content emphasized by use of <b> or <i> elements.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Text content emphasized by use of <b> or <i> elements.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h2 Travel Mobil Optionen - Basispakete
h3 Travel Mobil Basic
h3 Travel Mobil Basic World
h2 Travel Mobil Optionen - Komfortpakete
h3 Travel Mobil
h3 Travel Mobil World
h2 Ihre Vorteile
h3 Sorglos und sicher reisen
h3 Bequeme Vorbereitung
h3 Bestmögliche Netzabdeckung
h3 Günstig und einfach in Kontakt bleiben
h2 Buchung
h3 So einfach buchen Sie unsere Travel Mobil Optionen
h4 Wunschtermin über die kostenlose Hotline buchen
h4 Sofortbuchung über Kundencenter & MeinMagenta-App
h4 Sofortbuchung per SMS
h2 Alle Preisinformationen für Ihr Reiseland
h2 Häufig gestellte Fragen zu den Travel Mobil Optionen
h3 <!-- FAQ ITEMS -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Travel Mobil Optionen - Basispakete
h2 Travel Mobil Basic
h2 Travel Mobil Basic World
h2 Travel Mobil Optionen - Komfortpakete
h2 Travel Mobil
h2 Travel Mobil World
h2 Ihre Vorteile
h3 Sorglos und sicher reisen
h3 Bequeme Vorbereitung
h3 Bestmögliche Netzabdeckung
h3 Günstig und einfach in Kontakt bleiben
h2 Buchung
h3 So einfach buchen Sie unsere Travel Mobil Optionen
h4 Wunschtermin über die kostenlose Hotline buchen
h4 Sofortbuchung über Kundencenter & MeinMagenta-App
h4 Sofortbuchung per SMS
h2 Alle Preisinformationen für Ihr Reiseland
h2 Häufig gestellte Fragen zu den Travel Mobil Optionen
h3 <!-- FAQ ITEMS -->Observations for heading structure:
No heading exists to describe the whole page (main heading) – see 2.4.6 Headings and Labels
No heading is visually presented as main heading; if taking first heading as main heading, there would either be one more hierarchy level to every following heading or there would be multiple main headings
Heading "Buchung" has single sub-heading; sub-heading "So einfach buchen Sie..." does not add useful structure
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Text content emphasized by use of CSS.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Emphasis of text content uses
<strong>and<em>instead of<b>and<i>or CSS only
Accompanying Files
Observation Details
What is arguably list content, does not use semantic HTML list elements.
"Step by step guide" list in section "Buchen Sie Travel & Surf Pässe"
Remediation Notes
Use semantic list for all list content.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 iPhone 16 mit VIP Lieferung
h2 So einfach geht's
h3 Ihr Gutscheincode
h3 Persönliche Daten
h3 Kontakt
h3 Ihr favorisiertes iPhone (keine verbindliche Buchung)The programmatically determinable heading structure, using HTML heading elements is as follows:
h2 So einfach geht'sObservations for heading structure:
No main heading used
Visually presented headings do not use HTML heading elements
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Side note: While not a failure of this criterion, screenshot, showing a single paragraph element also shows "line breaks" in paragraph. Line breaks are made by using <span> elements inside the paragraph. Line breaks like these should be avoided, as the breaks happen on all viewport widths and might lead to unwanted styling issues (see attached screenshot)
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
Text Emphasis via <b> element.
Remediation Notes
Ensure, emphasis of text content uses <strong> and <em> instead of <b> and <i>.
In this instance, the whole paragraph is emphasized and as such should be styled via CSS, instead of using HTML elements for styling purposes.
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Bleiben Sie flexibel
h2 Sie möchten flexibel bleiben und suchen zudem einen Vertrag ohne vergünstigtes Gerät?
h2 Smartphone-Tarife
h2 Daten-Tarife
h2 Flexibel mit Gerät
h2 Mit MagentaEINS von flexiblen Verträgen im Mobilfunk profitieren
h2 Günstige Geräte mit VertragslaufzeitThe programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Bleiben Sie flexibel
h2 Mit den flexiblen Tarifen der Telekom – ohne Mindestlaufzeit und jederzeit kündbar! Egal ob für´s Smartphone oder zum Surfen mit Tablet oder Laptop – im besten Netz.
h2 Sie möchten flexibel bleiben und suchen zudem einen Vertrag ohne vergünstigtes Gerät?
h2 Smartphone-Tarife
h2 Daten-Tarife
h2 Flexibel mit Gerät
h2 Mit MagentaEINS von flexiblen Verträgen im Mobilfunk profitieren
h2 Günstige Geräte mit VertragslaufzeitObservations for heading structure:
Non-heading content using heading element (first heading level 2)
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
>20 occurrences of
<br>found in code markup (including multiples in various dialog windows)
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Accompanying Files
Observation Details
What is arguably list content, is not using semantic list elements. See
Checklist in "Tarif- und Gerätepreis"
"Spezifikationen" accordion item
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Emphasis via
<b>Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Sonim XP100
h2 Farbe
h2 Speichergröße
h3 Gesamtpreis des Geräts
h3 Geld sparen mit dem Handyankauf
h2 Tarif- und Gerätepreis
h2 Produktinformationen
h3 Netzteil
h3 Herstellerangaben
h4 Kontaktdaten
h4 Produktsicherheit
h2 Spezifikationen
h3 Hardware und Schnittstellen
h3 Farben
h3 Speichergrößen
h3 Marke
h3 Betriebssystem
h2 Sonim XP100 Highlights auf einen Blick
h3 Wissenswertes zum Sonim XP100
h3 Unkomplizierte Kommunikation – immer und überall
h3 Ein Akku, der durchhält
h3 Praktisches Design für den Alltag
h3 Einfache, vielseitige Bedienung
h3 Maximale Netzkompatibilität für zuverlässige Verbindungen
h2 Lieferumfang
h2 Vorteile im Überblick
h3 Handyankauf
h3 MagentaEINS VorteilThe programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Sonim XP100
h2 <!-- EMPTY -->
h3 Spezifikationen
h2 Spezifikationen
h2 Sonim XP100 Highlights auf einen Blick
h3 Vorteile im Überblick
h4 Handyankauf
h4 MagentaEINS VorteilObservations for heading structure:
Heading content not using heading elements
Empty heading level 2 found
Nested heading level 3 inside empty heading level 2
Duplicated heading "Spezifikationen" found
Hierarchy is not logical (see 2.4.6 Headings and Labels)
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Cashback bei der Telekom einlösen
h2 MeinMagenta App
h2 Zeitraum auswählen // Aktion auswählen
h2 So funktioniert Cashback
h3 Wunschtarif abgeschlossen
h3 Cashback anfordern
h3 Cashback erhalten
h2 Häufig gestellte Fragen
h3 Wie funktioniert die Teilnahme an der Aktion?
h3 <!-- FAQ ITEMS -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Cashback bei der Telekom einlösen
h2 So funktioniert Cashback
h3 Wunschtarif abgeschlossen
h3 Cashback anfordern
h3 Cashback erhalten
h2 Häufig gestellte Fragen
h3 Wie funktioniert die Teilnahme an der Aktion?
h3 <!-- FAQ ITEMS -->Observations for heading structure:
Visually presented heading content does not use heading element
"MeinMagenta App"
"Zeitraum auswählen" // "Aktion auswählen"
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Accompanying Files
Observation Details
List in Handyankauf form does not use semantic HTML list element.
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.
Accompanying Files
Observation Details
"Handyankauf" form step headings use control characters for line breaks.
<h2 class="...">
"IMEI-Nummer "
"Ihres"
"iPhone 11"
" mit "
"128"
"GB "
" für Ihren Ankauf "
</h2>Character codes are 000D, Carriage Return, \r & 000A, Line Feed, \n.
A screen reader announces this as follows:
Heading
IMEI-Nummer Ihres iPhone 11 mit 128GB für Ihren Ankauf
8 Items
You are currently on a Heading level 2
IMEI-Nummer, level 1
Ihres, level 1
Leerzeichen, level 1
iPhone 11, level 1
mit, level 1
128, level 1
GB, level 1
für Ihren Ankauf, level 1
End of Heading Level 2Subsequent heading levels (e.g. right now the whole body copy text below this heading level 2 in step 2 is a heading with 9 items, including announced space characters) will further worsen the announcements as levels are going deeper.
Remediation Notes
Ensure no special control characters are used in text content. Paragraphs must always use <p> elements and manual line breaks must be avoided unless necessary (e.g. in poetry).
Ensure only actual heading content uses heading elements.
Accompanying Files
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 Handy verkaufen, sparen, Ressourcen schonen
h2 Der Telekom Handy-Ankauf: Jetzt altes Smartphone oder Handy verkaufen und die Umwelt schonen
h3 Schnell
h3 Sicher
h3 Fair
h2 Jetzt altes Smartphone verkaufen und von attraktiven Ankaufsaktionen profitieren
h3 Welches Smartphone wollen Sie verkaufen?
h3 <!-- MULTI STEP FORM HEADINGS -->
h2 Unser nachhaltiger Smartphone-Kreislauf
h3 Neugerät
h3 Handyversicherung (Insure MyMobile)
h3 Handyankauf
h3 Neuwertige Handys (ReUse MyMobile)
h3 Handyrücknahme im Shop
h2 Helfen Sie uns, Ressourcen zu schonen und geben Sie uns Ihr altes Handy
h3 Eignet sich das Smartphone nicht mehr für eine weitere Verwendung oder hat keinen Wert mehr?
h3 Datensicheres Recycling
h2 Häufig gestellte Fragen zum Thema Handy verkaufen
h3 <!-- FAQ ITEMS -->The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Der Telekom Handy-Ankauf: Jetzt altes Smartphone oder Handy verkaufen und die Umwelt schonen
h2 Jetzt altes Smartphone verkaufen und von attraktiven Ankaufsaktionen profitieren
<!-- MULTI STEP FORM WITH VARIOUS STEP HEADINGS-->
h2 Welches Smartphone wollen Sie verkaufen?
h3 Geben Sie den Namen Ihres Smartphones ein und wählen Sie es aus der Liste aus.
h4 Bitte beantworten Sie vier kurze Fragen, damit wir ermitteln können, ob wir Ihr Gerät ankaufen und um Ihnen ein vorläufiges Angebot machen zu können.
h2 Unser nachhaltiger Smartphone-Kreislauf
h3 Neugerät
h3 Handyversicherung (Insure MyMobile)
h3 Handyankauf
h3 Neuwertige Handys (ReUse MyMobile)
h3 Handyrücknahme im Shop
h2 Helfen Sie uns, Ressourcen zu schonen und geben Sie uns Ihr altes Handy
h3 Eignet sich das Smartphone nicht mehr für eine weitere Verwendung oder hat keinen Wert mehr?
h3 Datensicheres Recycling
h2 Häufig gestellte Fragen zum Thema Handy verkaufen
h3 <!-- FAQ ITEMS -->Observations for heading structure:
Main heading content not using HTML heading element
"Schnell, Sicher, Fair" not using HTML heading element
Multi Step Form does not use correct heading hierarchy throughout the form. When using multi step form, each step is treated as a page, and on each page, the hierarchy levels must fit the overall structure
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
The multi step form should use a heading level 2 to structure the whole form. Inside the form, the headings then must use the appropriate heading level 3 to structure the form step. If necessary, headings level 4 can be used to further structure content within each step.
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Visual presentation of heading structure does not match code markup
+
Visual presentation of elements does not match code markup
+
Improper use of semantic HTML list elements
+
Semantic HTML elements are used for styling or layout purposes
+
Observation Details
These mis-matches happen with improper use of semantic HTML or lack thereof. Content, visually presented in a certain way, communicating certain purpose or functionality, uses mis-matched HTML elements.
This occurs in two "directions". Visually presented as X, using element Y, and using element X, while content is non-X content. The former includes:
Links, using HTML elements other than
<a href="">Buttons, using HTML elements other than
<button>Input elements, not using appropriate semantic HTML elements for e.g. selects or text inputs with
typeattributesHeadings, using HTML elements other than
<h1>-<h6>Lists, not using
<ul>,<ol>,<dl>...
The latter includes, using semantic HTML elements for content that does not fit the semantically conveyed role of that element, includes:
Lists for non-list content
Headings for non-heading content
...
Improper use of semantic HTML leads to numerous issues for many users, also affecting other success criteria at the same time, including those, ensuring keyboard navigation and accessible use of assistive technology.
Remediation Notes
Ensure proper use of semantic HTML.
Elements with needed or wanted functionality use the native HTML element, fitting said functionality
Links use
<a href="">Buttons use
<button>Lists use
<ul>,<ol>,<dl>; this includes all list content (e.g. navigations and lists of articles / cards)Headings use
<h1>,<h2>,<h3>,<h4>Emphasis of text content uses
<strong>and<em>instead of<b>and<i>...
Only content with that functionality uses said HTML elements.
No grouping for layout or styling is done, using semantic HTML elements; use
<div>and<span>onlyNo styling is done, using semantic HTML elements; this includes creating paragraphs with line break elements or spacings with empty paragraphs
Observation Details
The visually presented heading structure of the page does not match the use of semantic HTML heading elements. The visually presented structure is as follows:
h1 The programmatically determinable heading structure, using HTML heading elements is as follows:
h1 Observations for heading structure:
Remediation Notes
Ensure, visually presented heading structure matches programmatically determinable heading structure by only using HTML heading elements for heading content and using HTML heading elements for all heading content.
Side note: This criterion does not specifically look at proper heading content (i.e. wordings, usefulness of headings). See 2.4.6 Headings and Labels for this.
Observation Details
Semantic HTML elements must not be used for styling and layout purposes. Semantic elements carry a certain role that is communicated to assistive technology. Using semantic elements with a certain role for styling or layout purposes while the content does not match the communicated role, it will confuse users of assistive technology. Certain elements will be announced in certain ways, so that e.g. line break elements <br> or empty paragraph elements <p></p> are announced as "empty group".
Remediation Notes
Ensure proper use of semantic HTML.
Semantic elements must not solely be used for styling or layout purposes
All styling and layout changes must use CSS
Limit use of line breaks to intended purposes, e.g. in poetry or code snippets
Observation Details
The page uses HTML list elements for non-list content. See
class="container-grid--list"
On the other hand, what is arguably list content, is not using semantic list elements. See
Remediation Notes
Do not use semantic lists for non-list content. But do use semantic list for all list content.