Skip to content

R080: Intentional foreign-language runs missing a lang attribute

Latin-script passages of four or more words already marked translate="no" that still inherit an Arabic or missing lang, so an Arabic screen reader voice reads them with Arabic pronunciation.

The check

Id
R080
Default severity
low

When it fires

  1. lowmedium confidence

    On an Arabic page, a visible run with no Arabic in it and at least four Latin words sits under translate="no", so its author marked it as deliberately foreign, but its lang is Arabic or missing. An Arabic screen-reader voice reads it with Arabic pronunciation. Reported at medium confidence.

    Fix: Add the run's real language: lang="en" (kept alongside translate="no").

What it leaves alone

Latin text its author did not mark with translate="no", which R010 and R011 report as untranslated; runs of fewer than four Latin words, like a brand name; and runs already tagged with a language that is not Arabic. Up to five per page.

Broken, then fixed

before.html
<blockquote translate="no">Stay hungry, stay foolish.</blockquote>
after.html
<blockquote translate="no" lang="en">Stay hungry, stay foolish.</blockquote>

Check it by hand

Select the passage and run [$0.closest('[translate]')?.translate, $0.closest('[lang]')?.lang] in the DevTools console. false beside an Arabic or missing language is the finding.

What the report shows you

Each R080 finding carries the fields below that apply to it, so you can see why it fired without rerunning the scan.

sample
The run's text, cut to 100 characters.
inheritedLang
The language it inherits, or nothing when no lang is set anywhere above it.

Does your page trip R080?

Paste a URL. Ritla renders the page on desktop, tablet and mobile, runs every check, and shows the top issues with screenshot evidence.

Scan a page freeBrowse the checks