Was das lang-Attribut macht
Das lang-Attribut im html-Element sagt, in welcher Sprache eine Seite geschrieben ist. Screenreader wählen danach die Aussprache, Browser und Übersetzungsdienste die Sprache.
So funktioniert es
Ganz oben in jeder HTML-Seite steht das html-Element. Sein Attribut lang nennt die Sprache des Inhalts:
<html lang="de">
Ein Screenreader, also ein Programm, das Seiten vorliest, schaltet danach seine Stimme um. Fehlt die Angabe, nimmt er die Sprache, die im System eingestellt ist. Ein deutscher Text klingt dann mit englischer Aussprache, Zahlen und Abkürzungen werden falsch gelesen. Browser bieten anhand von lang die Übersetzung an, und auch Silbentrennung per CSS (hyphens: auto) richtet sich danach.
Steht ein Absatz in einer anderen Sprache, bekommt er sein eigenes lang, etwa <blockquote lang="en">. Dann wechselt die Stimme nur für diesen Teil.
WCAG 2.2, der Standard für barrierefreie Webinhalte, verlangt die Sprache der Seite in Kriterium 3.1.1 und die Sprache einzelner Teile in 3.1.2.
Worauf es ankommt
- Ein gültiger Sprachcode. Der Wert folgt BCP 47, dem Standard für Sprachcodes:
de,en, mit Regionde-AToderen-GB. Werte wiegerman,deutschoderde_DEmit Unterstrich sind ungültig. - Die Sprache, die wirklich dasteht. Eine englische Seite mit
lang="de"ist schlimmer als gar keine Angabe. Vorsicht bei Vorlagen, die immer die Sprache der Installation eintragen. - Jede Sprachversion für sich. Bei mehrsprachigen Seiten trägt jede Version ihren eigenen Code.
- Für Suchmaschinen ein Hinweis unter mehreren. Google erkennt die Sprache nach eigener Aussage am sichtbaren Text. Für Sprachversionen ist hreflang zuständig. Ein korrektes
langschadet aber nie und hilft Browsern und anderen Diensten.
So richtest du es ein
Das html-Element kommt aus der Vorlage deines Themes oder deines Frameworks. In WordPress setzt ein sauberes Theme den Wert aus der eingestellten Sprache der Website (Einstellungen · Allgemein); fehlt er, liegt es am Theme. In anderen Systemen und bei selbst gebauten Seiten steht es in der Layout-Datei, die alle Seiten teilen. Bei Mehrsprachigkeit muss das Plugin oder Framework den Code je Version setzen. Prüf danach den Quelltext einer Seite jeder Sprache.