- Stufe
- AA
- Seit
- WCAG 2.0
- Einträge
- 3 / 193
3.1.2 Sprache von Teilen
Ein Abschnitt in einer anderen Sprache muss das angeben, aus demselben Grund.
/ Was es verlangt
Enthält eine Seite, die in einer Sprache geschrieben ist, eine Passage oder Wendung in einer anderen, muss der Code kennzeichnen, wo die Sprache wechselt. In HTML steht das lang-Attribut an dem Element, das den fremdsprachigen Text enthält. Ein Screenreader wechselt dann für diese Passage die Stimme und kehrt danach zurück. Ohne die Kennzeichnung wird ein englisches Zitat auf einer deutschen Seite mit deutscher Aussprache vorgelesen, die Zuhörende oft nicht entschlüsseln können. Braillezeilen stützen sich auf dieselbe Angabe.
Das Kriterium nennt vier Ausnahmen: Eigennamen, Fachbegriffe, Wörter unbestimmter Sprache sowie Wörter oder Wendungen, die Teil der Alltagssprache des umgebenden Textes geworden sind. Ein Markenname oder das Wort „Software“ in einem deutschen Satz braucht also keine Auszeichnung. Ein ganzer Satz, ein Zitat, ein Block mit Rechtstext oder ein Link zu einer anderen Sprachversion braucht sie dagegen. Ein Attribut mit ungültigem Wert oder eines, das die falsche Sprache nennt, besteht ebenfalls nicht.
/ Woran Seiten scheitern
- Ein englisches Zitat oder Abstract steht auf einer deutschen Seite, und sein Element hat kein lang-Attribut.
- Der Sprachumschalter führt „English“ und „Polski“ als Links auf, und keiner der Links trägt ein eigenes lang.
- Ein Absatz, der aus einem anderen Dokument eingefügt wurde, behält lang="en", obwohl der Text darin längst übersetzt ist.
- Ein span-Element trägt einen Wert, der kein Sprachkürzel ist, etwa lang="english".
- Eine Seite gibt denselben Hinweis nacheinander in zwei Sprachen aus, und angegeben ist nur die Sprache der Seite.
/ So prüfen Sie es selbst
- Lesen Sie die Seite und notieren Sie jede Passage, die nicht in der Hauptsprache steht: Zitate, fremdsprachige Titel, Rechtsklauseln und die Links des Sprachumschalters.
- Untersuchen Sie jede davon in den Entwicklerwerkzeugen und suchen Sie ein lang-Attribut am Element selbst oder an einem Vorfahren unterhalb des html-Elements.
- Suchen Sie im Quelltext nach lang= und prüfen Sie jeden gefundenen Wert. Er muss ein gültiges Kürzel sein und zum Text darin passen.
- Hören Sie sich diese Passagen mit einem kostenlosen Screenreader wie NVDA an und achten Sie darauf, ob die Stimme wechselt.
/ So beheben Sie es
- Umschließen Sie eine fremdsprachige Wendung mit einem span-Element mit dem richtigen Wert, zum Beispiel lang="en" um eine englische Wendung.
- Setzen Sie lang auf das Blockelement, wenn der ganze Block in einer anderen Sprache steht: blockquote, p, li oder section.
- Geben Sie in einem Sprachumschalter jedem Link das lang seiner eigenen Beschriftung, zum Beispiel lang="pl" am Link mit dem Text „Polski“.
- Entfernen Sie lang-Attribute, die von eingefügten Inhalten übrig geblieben sind, oder korrigieren Sie sie auf die Sprache des Textes, den sie jetzt enthalten.
- Entsteht der Inhalt in einem CMS-Editor, nutzen Sie dessen Sprachwerkzeug für fremdsprachige Passagen, damit die Kennzeichnung mit dem Text gespeichert wird.
/ Was unser Scanner prüft
Zwei Prüfungen betrachten Werte und nicht Text. H58.1.Lang aus HTML_CodeSniffer geht jedes Element unterhalb von html durch, das ein lang-Attribut hat, und meldet einen Wert, der nicht wie ein Sprachkürzel aufgebaut ist, und die axe-Regel valid-lang meldet ungültige lang-Werte. Keine findet eine fremdsprachige Passage ohne lang-Attribut, also den üblichen Fehler, oder erkennt, ob ein gültiges Kürzel zum Text passt.
/ Wer es verletzt, nach unseren eigenen Messungen
| Stelle | Sektor | Vorkommen | Wert |
|---|---|---|---|
| Uniwersytet Jagielloński | education · PL | 12 | 1 |
| Seattle | city · US | 1 | 12 |
| Warszawa | city · PL | 1 | 20 |
Eine Seite je Stelle, automatisch im Wochenrhythmus gemessen. Behebungen seit dem letzten Durchlauf erscheinen beim nächsten, und jede Eintragsseite bietet ein Recht auf Gegendarstellung.
/ Fragen zu diesem Kriterium
Muss ich jedes Fremdwort mit einem lang-Attribut auszeichnen?
Nein. Ausgenommen sind Eigennamen, Fachbegriffe, Wörter, deren Sprache sich nicht bestimmen lässt, und Wörter, die in den Alltagsgebrauch der umgebenden Sprache eingegangen sind. Ein Firmenname oder ein Lehnwort wie „Software“ bleibt, wie es ist. Zeichnen Sie Wendungen, Sätze und längere Passagen aus, die jemand, der die Hauptsprache liest, als fremdsprachig erkennt.
Wie kennzeichne ich einen Sprachwechsel in HTML?
Ergänzen Sie das lang-Attribut mit dem richtigen Sprachkürzel an dem Element, das den Text enthält. Für wenige Wörter in einem Satz nehmen Sie ein span-Element mit lang="en" oder einem anderen Code. Bei einem ganzen Zitat oder Absatz setzen Sie das Attribut auf das Element blockquote oder p. Alles darin erbt den Wert, bis ein verschachteltes Element einen anderen setzt.
Ist das Kriterium Sprache von Teilen für Stufe AA erforderlich?
Ja. 3.1.2 ist ein Kriterium der Stufe AA und gehört seit Version 2.0 zu den WCAG, also zu jeder AA-Prüfung. Das zugehörige 3.1.1 Sprache der Seite hat Stufe A. Automatische Werkzeuge decken es schlecht ab, weil Software einen lang-Wert prüfen kann, aber keine verlässliche Möglichkeit hat, einen nicht ausgezeichneten Satz in einer anderen Sprache zu bemerken.
